cvs commit: src/sys/fs/fifofs fifo_vnops.c src/sys/kern uipc_socket.c

Robert Watson rwatson at FreeBSD.org
Thu Jun 17 19:58:36 PDT 2004


rwatson     2004-06-18 02:57:55 UTC

  FreeBSD src repository

  Modified files:
    sys/fs/fifofs        fifo_vnops.c 
    sys/kern             uipc_socket.c 
  Log:
  Merge some additional leaf node socket buffer locking from
  rwatson_netperf:
  
  Introduce conditional locking of the socket buffer in fifofs kqueue
  filters; KNOTE() will be called holding the socket buffer locks in
  fifofs, but sometimes the kqueue() system call will poll using the
  same entry point without holding the socket buffer lock.
  
  Introduce conditional locking of the socket buffer in the socket
  kqueue filters; KNOTE() will be called holding the socket buffer
  locks in the socket code, but sometimes the kqueue() system call
  will poll using the same entry points without holding the socket
  buffer lock.
  
  Simplify the logic in sodisconnect() since we no longer need spls.
  
  NOTE: To remove conditional locking in the kqueue filters, it would
  make sense to use a separate kqueue API entry into the socket/fifo
  code when calling from the kqueue() system call.
  
  Revision  Changes    Path
  1.99      +27 -6     src/sys/fs/fifofs/fifo_vnops.c
  1.180     +26 -13    src/sys/kern/uipc_socket.c


More information about the cvs-src mailing list