NFS trouble on 7.3-STABLE i386

Mark Morley mark at islandnet.com
Wed May 26 10:08:04 UTC 2010


On Tue, 25 May 2010 20:59:08 -0400 (EDT) Rick Macklem  wrote:
You could try this patch. (It reverts the only vnode locking change that I
can see was done the the nfs server between 7.1 and 7.3.):
--- nfs_serv.c.sav 2010-05-25 19:40:29.000000000 -0400
+++ nfs_serv.c 2010-05-25 19:41:38.000000000 -0400
@@ -3236,7 +3236,7 @@
   io.uio_rw = UIO_READ;
   io.uio_td = NULL;
   eofflag = 0;
- vn_lock(vp, LK_SHARED | LK_RETRY, td);
+ vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td);
   if (cookies) {
    free((caddr_t)cookies, M_TEMP);
    cookies = NULL;
@@ -3518,7 +3518,7 @@
   io.uio_rw = UIO_READ;
   io.uio_td = NULL;
   eofflag = 0;
- vn_lock(vp, LK_SHARED | LK_RETRY, td);
+ vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td);
   if (cookies) {
    free((caddr_t)cookies, M_TEMP);
    cookies = NULL;

If you get a chance to try it, please let us know if it helps, rick

Thanks, but unfortunately it didn't work.  Rebooted it four hours ago with the patch in place and at the moment I have seven nfsd processes stuck in that state.

Could it indicate a problem with the underlying disk system?  It's an aac0 raid, but it has no errors and the controller indicates all is well, so I doubt it.

Mark


More information about the freebsd-stable mailing list