Date: Sun, 03 Jul 2005 01:06:31 -0000 From: Gleb Smirnoff <glebius@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/kern uipc_socket.c Message-ID: <200502192056.j1JKu8qR062201@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
glebius 2005-02-19 20:56:08 UTC FreeBSD src repository Modified files: (Branch: RELENG_5) sys/kern uipc_socket.c Log: Apply a workaround for problem fixed in sys/socketvar.h rev. 1.137. We can't MFC socketvar.h since it will break ABI between kernel and several modules. This workaround saves sb_state in local variable and restores it after bzero(). Original commit log of socketvar.h and problem description: Move sb_state to the beginning of structure, above sb_startzero member. sb_state shouldn't be erased, when socket buffer is flushed by sorflush(). When sb_state was bzero'ed, a recently set SBS_CANTRCVMORE flag was cleared. If a socket was shutdown(SHUT_RD), a subsequent read() would block on it. Reported by: Ed Maste, Gerrit Nagelhout Reviewed by: rwatson Revision Changes Path 1.208.2.11 +8 -0 src/sys/kern/uipc_socket.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200502192056.j1JKu8qR062201>