NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: kern/42455: tstile hang with nfs



With the patch below, I always see that ctx.nwc_mbufcount is
always 1.

Christoph


Index: nfs_vnops.c
===================================================================
RCS file: /cvsroot/src/sys/nfs/nfs_vnops.c,v
retrieving revision 1.284
diff -u -p -r1.284 nfs_vnops.c
--- nfs_vnops.c 24 Jun 2010 13:03:17 -0000      1.284
+++ nfs_vnops.c 19 Oct 2010 12:11:11 -0000
@@ -1468,7 +1468,16 @@ nfsmout:
                mutex_enter(&ctx.nwc_lock);
                ctx.nwc_mbufcount--;
                while (ctx.nwc_mbufcount > 0) {
-                       cv_wait(&ctx.nwc_cv, &ctx.nwc_lock);
+                       error = cv_timedwait(&ctx.nwc_cv, &ctx.nwc_lock,
+                           mstohz(1000));
+                       if (error) {
+                               printf("nfsmblk timeout, mbufcount %i\n",
+                                       ctx.nwc_mbufcount);
+                               mutex_exit(&ctx.nwc_lock);
+                               Debugger();
+                               mutex_enter(&ctx.nwc_lock);
+                               continue;
+                       }
                }
                mutex_exit(&ctx.nwc_lock);
        }


Home | Main Index | Thread Index | Old Index