[Midnightbsd-cvs] src [11869] trunk/sys/fs/nfsclient/nfs_clstate.c: Fix the sleep event for layout recall.

laffer1 at midnightbsd.org laffer1 at midnightbsd.org
Sun Jul 15 14:12:49 EDT 2018


Revision: 11869
          http://svnweb.midnightbsd.org/src/?rev=11869
Author:   laffer1
Date:     2018-07-15 14:12:49 -0400 (Sun, 15 Jul 2018)
Log Message:
-----------
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.

Obtained from: FreeBSD r334252

Revision Links:
--------------
    http://svnweb.midnightbsd.org/src/?rev=334252

Modified Paths:
--------------
    trunk/sys/fs/nfsclient/nfs_clstate.c

Modified: trunk/sys/fs/nfsclient/nfs_clstate.c
===================================================================
--- trunk/sys/fs/nfsclient/nfs_clstate.c	2018-07-15 18:10:40 UTC (rev 11868)
+++ trunk/sys/fs/nfsclient/nfs_clstate.c	2018-07-15 18:12:49 UTC (rev 11869)
@@ -2720,7 +2720,7 @@
 				     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;



More information about the Midnightbsd-cvs mailing list