diff options
-rw-r--r-- | sys/nfs/nfs_node.c | 6 | ||||
-rw-r--r-- | sys/nfsclient/nfs_node.c | 6 |
2 files changed, 10 insertions, 2 deletions
diff --git a/sys/nfs/nfs_node.c b/sys/nfs/nfs_node.c index c3958c0..97db442 100644 --- a/sys/nfs/nfs_node.c +++ b/sys/nfs/nfs_node.c @@ -34,7 +34,7 @@ * SUCH DAMAGE. * * @(#)nfs_node.c 8.6 (Berkeley) 5/22/95 - * $Id: nfs_node.c,v 1.28 1998/09/29 23:15:25 mckusick Exp $ + * $Id: nfs_node.c,v 1.29 1999/06/05 05:26:36 peter Exp $ */ @@ -167,6 +167,10 @@ loop: bcmp((caddr_t)fhp, (caddr_t)np2->n_fhp, fhsize)) continue; vrele(vp); + if (nfs_node_hash_lock < 0) + wakeup(&nfs_node_hash_lock); + nfs_node_hash_lock = 0; + zfree(nfsnode_zone, np); goto retry; } LIST_INSERT_HEAD(nhpp, np, n_hash); diff --git a/sys/nfsclient/nfs_node.c b/sys/nfsclient/nfs_node.c index c3958c0..97db442 100644 --- a/sys/nfsclient/nfs_node.c +++ b/sys/nfsclient/nfs_node.c @@ -34,7 +34,7 @@ * SUCH DAMAGE. * * @(#)nfs_node.c 8.6 (Berkeley) 5/22/95 - * $Id: nfs_node.c,v 1.28 1998/09/29 23:15:25 mckusick Exp $ + * $Id: nfs_node.c,v 1.29 1999/06/05 05:26:36 peter Exp $ */ @@ -167,6 +167,10 @@ loop: bcmp((caddr_t)fhp, (caddr_t)np2->n_fhp, fhsize)) continue; vrele(vp); + if (nfs_node_hash_lock < 0) + wakeup(&nfs_node_hash_lock); + nfs_node_hash_lock = 0; + zfree(nfsnode_zone, np); goto retry; } LIST_INSERT_HEAD(nhpp, np, n_hash); |