diff options
author | dfr <dfr@FreeBSD.org> | 1997-05-10 16:12:03 +0000 |
---|---|---|
committer | dfr <dfr@FreeBSD.org> | 1997-05-10 16:12:03 +0000 |
commit | ff5630dff67f4c3a38f2d5f2cc72d3bc7d9c2f4e (patch) | |
tree | fd644b2975999e699cafd6b8cd7e97a492aafbe9 /sys/nfsserver/nfs_srvcache.c | |
parent | 1a9ed5bd577915dcf35f9a3e3828524cacb87610 (diff) | |
download | FreeBSD-src-ff5630dff67f4c3a38f2d5f2cc72d3bc7d9c2f4e.zip FreeBSD-src-ff5630dff67f4c3a38f2d5f2cc72d3bc7d9c2f4e.tar.gz |
Fix a nasty hang connected with write gathering. Also add debug print
statements to bits of the server which helped me find the hang.
Diffstat (limited to 'sys/nfsserver/nfs_srvcache.c')
-rw-r--r-- | sys/nfsserver/nfs_srvcache.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/sys/nfsserver/nfs_srvcache.c b/sys/nfsserver/nfs_srvcache.c index 1555cc3..6121db0 100644 --- a/sys/nfsserver/nfs_srvcache.c +++ b/sys/nfsserver/nfs_srvcache.c @@ -34,7 +34,7 @@ * SUCH DAMAGE. * * @(#)nfs_srvcache.c 8.3 (Berkeley) 3/30/95 - * $Id$ + * $Id: nfs_srvcache.c,v 1.11 1997/02/22 09:42:40 peter Exp $ */ #ifndef NFS_NOSERVER @@ -184,6 +184,7 @@ loop: rp = rp->rc_hash.le_next) { if (nd->nd_retxid == rp->rc_xid && nd->nd_procnum == rp->rc_proc && netaddr_match(NETFAMILY(rp), &rp->rc_haddr, nd->nd_nam)) { + NFS_DPF(RC, ("H%03x", rp->rc_xid & 0xfff)); if ((rp->rc_flag & RC_LOCKED) != 0) { rp->rc_flag |= RC_WANTED; (void) tsleep((caddr_t)rp, PZERO-1, "nfsrc", 0); @@ -224,6 +225,7 @@ loop: } } nfsstats.srvcache_misses++; + NFS_DPF(RC, ("M%03x", nd->nd_retxid & 0xfff)); if (numnfsrvcache < desirednfsrvcache) { rp = (struct nfsrvcache *)malloc((u_long)sizeof *rp, M_NFSD, M_WAITOK); @@ -289,6 +291,7 @@ loop: rp = rp->rc_hash.le_next) { if (nd->nd_retxid == rp->rc_xid && nd->nd_procnum == rp->rc_proc && netaddr_match(NETFAMILY(rp), &rp->rc_haddr, nd->nd_nam)) { + NFS_DPF(RC, ("U%03x", rp->rc_xid & 0xfff)); if ((rp->rc_flag & RC_LOCKED) != 0) { rp->rc_flag |= RC_WANTED; (void) tsleep((caddr_t)rp, PZERO-1, "nfsrc", 0); @@ -319,6 +322,7 @@ loop: return; } } + NFS_DPF(RC, ("L%03x", nd->nd_retxid & 0xfff)); } /* |