kernel - Fix a rare nfsnode destruction race
authorMatthew Dillon <dillon@apollo.backplane.com>
Thu, 21 Apr 2011 09:23:49 +0000 (02:23 -0700)
committerMatthew Dillon <dillon@apollo.backplane.com>
Thu, 21 Apr 2011 09:34:02 +0000 (02:34 -0700)
commit6ab1269c4531652932a5ae384584e6375f204779
tree3cb9ed64985194683e93d3ee1aa15aafc9605664
parent02f0e3c636b2378b679dff305acc15b880313bef
kernel - Fix a rare nfsnode destruction race

* Clear np->n_vnode atomically (w/ the token held) when removing a
  node from the hash table.  The field was previously not being
  cleared at all which could race the nfsnhash lookup code despite
  the vnode interlock and check the lookup code was performing.

* Remove unnecessary tokens around the remaining nfsnode freeing code
  in the reclaim path.
sys/vfs/nfs/nfs_node.c