cvs commit: src/sys/compat/linux linux_socket.c

Maxim Sobolev sobomax at FreeBSD.org
Mon Mar 7 07:26:43 GMT 2005


sobomax     2005-03-07 07:26:43 UTC

  FreeBSD src repository

  Modified files:
    sys/compat/linux     linux_socket.c 
  Log:
  Handle MSG_NOSIGNAL flag in linux_send() by setting SO_NOSIGPIPE on socket
  for the duration of the send() call. Such approach may be less than ideal
  in threading environment, when several threads share the same socket and it
  might happen that several of them are calling linux_send() at the same time
  with and without SO_NOSIGPIPE set.
  
  However, such race condition is very unlikely in practice, therefore this
  change provides practical improvement compared to the previous behaviour.
  
  PR:             kern/76426
  Submitted by:   Steven Hartland <killing at multiplay.co.uk>
  MFC after:      3 days
  
  Revision  Changes    Path
  1.56      +25 -2     src/sys/compat/linux/linux_socket.c


More information about the cvs-src mailing list