cvs commit: src/sys/netipx ipx_input.c spx_usrreq.c
Robert Watson
rwatson at FreeBSD.org
Thu Mar 10 06:36:35 PST 2005
rwatson 2005-03-10 14:36:35 UTC
FreeBSD src repository
Modified files: (Branch: RELENG_5)
sys/netipx ipx_input.c spx_usrreq.c
Log:
Merge ipx_input.c:1.48, spx_srreq.c:1.61 from HEAD to RELENG_5:
Use the IPX PCB list mutex and IPX PCB mutexes to lock down the SPX
portion of IPX/SPX:
- Protect IPX PCB lists with the IPX PCB list mutex, in particular
when calling PCB and PCB list manipulation routines in ipx_pcb.c.
- Protect both IPX PCB state and SPX PCB state using the IPX PCB
mutex.
- Generally annotate locking, as well as adding liberal use of lock
assertions to document locking requirements.
- Where possible, use unlocked reads when reading integer or smaller
sized socket options on SPX sockets.
- De-spl throughout.
Notes:
- spx_input() expects both the list mutex and PCB mutex to be held
on entry, but will release both on return. Because sonewconn() is
called from spx_input(), it may actually drop one PCB lock and
acquire another during generation of a new connection, meaning the
caller is not in a position to unlock the PCB mutex.
Approved by: re (kensmith)
Revision Changes Path
1.34.4.13 +2 -1 src/sys/netipx/ipx_input.c
1.46.2.14 +108 -38 src/sys/netipx/spx_usrreq.c
More information about the cvs-src
mailing list