Author: rmacklem
Date: Mon Jun  4 20:47:37 2018
New Revision: 334634
URL: https://svnweb.freebsd.org/changeset/base/334634

Log:
  MFC: r334252
  Fix the sleep event for layout recall.
  
  The sleep for I/O completion during an NFSv4.1 pNFS layout recall used
  the wrong event value and could result in the "[nfscl]" thread hung
  for the mount.
  This patch fixes the event to be the correct.
  This bug will only affect NFSv4.1 pnfs mounts and only when the server
  does a layout recall callback, so it won't affect many. Without the patch,
  a mount without the "pnfs" option will avoid the problem.
  Found during testing of the pNFS server.

Modified:
  stable/11/sys/fs/nfsclient/nfs_clstate.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/fs/nfsclient/nfs_clstate.c
==============================================================================
--- stable/11/sys/fs/nfsclient/nfs_clstate.c    Mon Jun  4 20:40:22 2018        
(r334633)
+++ stable/11/sys/fs/nfsclient/nfs_clstate.c    Mon Jun  4 20:47:37 2018        
(r334634)
@@ -2719,7 +2719,7 @@ tryagain2:
                                     NFSV4LOCK_LOCK) != 0) {
                                        lyp->nfsly_lock.nfslock_lock |=
                                            NFSV4LOCK_WANTED;
-                                       (void)nfsmsleep(&lyp->nfsly_lock,
+                                       nfsmsleep(&lyp->nfsly_lock.nfslock_lock,
                                            NFSCLSTATEMUTEXPTR, PZERO, "nfslyp",
                                            NULL);
                                        goto tryagain2;
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to