Date: Sun, 5 Sep 2004 14:33:21 +0000 (UTC) From: Robert Watson <rwatson@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: <200409051433.i85EXLd2029734@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
rwatson 2004-09-05 14:33:21 UTC FreeBSD src repository Modified files: sys/kern uipc_socket.c Log: Expand the scope of the socket buffer locks in sopoll() to include the state test as well as set, or we risk a race between a socket wakeup and registering for select() or poll() on the socket. This does increase the cost of the poll operation, but can probably be optimized some in the future. This appears to correct poll() "wedges" experienced with X11 on SMP systems with highly interactive applications, and might affect a plethora of other select() driven applications. RELENG_5 candidate. Problem reported by: Maxim Maximov <mcsi at mcsi dot pp dot ru> Debugged with help of: dwhite Revision Changes Path 1.212 +4 -4 src/sys/kern/uipc_socket.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200409051433.i85EXLd2029734>