K 10 svn:author V 7 rwatson K 8 svn:date V 27 2005-03-10T14:36:35.000000Z K 7 svn:log V 1003 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) END