summaryrefslogtreecommitdiffstats
path: root/sys/nfsserver/nfs_srvcache.c
diff options
context:
space:
mode:
authordfr <dfr@FreeBSD.org>1997-05-10 16:12:03 +0000
committerdfr <dfr@FreeBSD.org>1997-05-10 16:12:03 +0000
commitff5630dff67f4c3a38f2d5f2cc72d3bc7d9c2f4e (patch)
treefd644b2975999e699cafd6b8cd7e97a492aafbe9 /sys/nfsserver/nfs_srvcache.c
parent1a9ed5bd577915dcf35f9a3e3828524cacb87610 (diff)
downloadFreeBSD-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.c6
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));
}
/*
OpenPOWER on IntegriCloud