Protect nfs socket locks with a critical section. Recheck rep->r_mrep just
authorMatthew Dillon <dillon@dragonflybsd.org>
Wed, 7 Apr 2004 05:15:48 +0000 (05:15 +0000)
committerMatthew Dillon <dillon@dragonflybsd.org>
Wed, 7 Apr 2004 05:15:48 +0000 (05:15 +0000)
commitb2eb81cde0846a1f939d982317b0e2a624b766e1
tree60efaedcadde9785fe0e3a779752b650d0a5247f
parentb5f12e2114ec5fc2d55e1d2214d97fa9fc4fa001
Protect nfs socket locks with a critical section.  Recheck rep->r_mrep just
prior to calling tsleep() in case another thread got in and handled the
request being waited for.  Rewrite the vnode scanning code in nfs_sync()
to use vmntvnodescan(), fixing a number of potential races.  Protect the
commit phase 2 scan in nfs_subs.c with the appropriate token (note: still
needs some work).
sys/vfs/nfs/nfs_socket.c
sys/vfs/nfs/nfs_subs.c
sys/vfs/nfs/nfs_vfsops.c
sys/vfs/nfs/nfsmount.h