Author: jah
Date: Sun Jan 13 20:33:54 2019
New Revision: 343005
URL: https://svnweb.freebsd.org/changeset/base/343005

Log:
  Handle SIGIO for listening sockets
  
  r319722 separated struct socket and parts of the socket I/O path into
  listening-socket-specific and dataflow-socket-specific pieces.  Listening
  socket connection notifications are now handled by solisten_wakeup() instead
  of sowakeup(), but solisten_wakeup() does not currently post SIGIO to the
  owning process.
  
  PR:   234258
  Reported by:  Kenneth Adelman
  MFC after:    1 week
  Differential Revision:        https://reviews.freebsd.org/D18664

Modified:
  head/sys/kern/uipc_socket.c

Modified: head/sys/kern/uipc_socket.c
==============================================================================
--- head/sys/kern/uipc_socket.c Sun Jan 13 19:49:46 2019        (r343004)
+++ head/sys/kern/uipc_socket.c Sun Jan 13 20:33:54 2019        (r343005)
@@ -886,6 +886,8 @@ solisten_wakeup(struct socket *sol)
        }
        SOLISTEN_UNLOCK(sol);
        wakeup_one(&sol->sol_comp);
+       if ((sol->so_state & SS_ASYNC) && sol->so_sigio != NULL)
+               pgsigio(&sol->so_sigio, SIGIO, 0);
 }
 
 /*
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to