Skip site navigation (1)Skip section navigation (2)
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>