CVSROOT:        /cvs
Module name:    src
Changes by:     m...@cvs.openbsd.org    2017/06/26 03:32:32

Modified files:
        sys/kern       : uipc_socket.c uipc_usrreq.c uipc_socket2.c 
                         sys_generic.c 
        sys/miscfs/fifofs: fifo_vnops.c 
        sys/net        : pfkeyv2.c rtsock.c 
        sys/netinet    : ip_divert.c ip_mroute.c raw_ip.c tcp_usrreq.c 
                         tcp_subr.c tcp_output.c udp_usrreq.c 
                         tcp_input.c 
        sys/netinet6   : ip6_divert.c ip6_mroute.c raw_ip6.c 
        sys/nfs        : nfs_socket.c 
        sys/sys        : socketvar.h event.h 

Log message:
Assert that the corresponding socket is locked when manipulating socket
buffers.

This is one step towards unlocking TCP input path.  Note that all the
functions asserting for the socket lock are not necessarilly MP-safe.
All the fields of 'struct socket' aren't protected.

Introduce a new kernel-only kqueue hint, NOTE_SUBMIT, to be able to
tell when a filter needs to lock the underlying data structures.  Logic
and name taken from NetBSD.

Tested by Hrvoje Popovski.

ok claudio@, bluhm@, mikeb@

Reply via email to