CVSROOT: /cvs
Module name: src
Changes by: [email protected] 2013/01/15 04:12:57
Modified files:
sys/kern : sys_socket.c uipc_socket.c uipc_socket2.c
sys/sys : socketvar.h
Log message:
Changing the socket buffer flags sb_flags was not interrupt safe
as |= and &= are non-atomic operations. To avoid additional locks,
put the flags that have to be accessed from interrupt into a separate
sb_flagsintr 32 bit integer field. sb_flagsintr is protected by
splsoftnet.
Input from miod@ deraadt@; OK deraadt@