[kernel] Add patch to fix nfsd soft lockup (rhbz 1185519)

Josh Boyer jwboyer at fedoraproject.org
Mon Mar 2 19:20:24 UTC 2015


commit 2939fc47bcf1f4f0757c12dc94d0c2dfe0aba4ae
Author: Josh Boyer <jwboyer at fedoraproject.org>
Date:   Mon Mar 2 14:17:35 2015 -0500

    Add patch to fix nfsd soft lockup (rhbz 1185519)

 ...-cl_revoked-list-deletion-causing-softloc.patch | 35 ++++++++++++++++++++++
 kernel.spec                                        |  7 +++++
 2 files changed, 42 insertions(+)
---
diff --git a/NFS-fix-clp-cl_revoked-list-deletion-causing-softloc.patch b/NFS-fix-clp-cl_revoked-list-deletion-causing-softloc.patch
new file mode 100644
index 0000000..23527a2
--- /dev/null
+++ b/NFS-fix-clp-cl_revoked-list-deletion-causing-softloc.patch
@@ -0,0 +1,35 @@
+From: Andrew Elble <aweits at rit.edu>
+Date: Wed, 25 Feb 2015 13:42:55 -0500
+Subject: [PATCH] NFS: fix clp->cl_revoked list deletion causing softlock in
+ nfsd
+
+commit 2d4a532d385f ("nfsd: ensure that clp->cl_revoked list is
+protected by clp->cl_lock") removed the use of the reaplist to
+clean out clp->cl_revoked. It failed to change list_entry() to
+walk clp->cl_revoked.next instead of reaplist.next
+
+Fixes: 2d4a532d385f ("nfsd: ensure that clp->cl_revoked list is protected by clp->cl_lock")
+Cc: stable at vger.kernel.org
+Reported-by: Eric Meddaugh <etmsys at rit.edu>
+Tested-by: Eric Meddaugh <etmsys at rit.edu>
+Signed-off-by: Andrew Elble <aweits at rit.edu>
+---
+ fs/nfsd/nfs4state.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
+index f6b2a09f793f..d2f2c37dc2db 100644
+--- a/fs/nfsd/nfs4state.c
++++ b/fs/nfsd/nfs4state.c
+@@ -1638,7 +1638,7 @@ __destroy_client(struct nfs4_client *clp)
+ 		nfs4_put_stid(&dp->dl_stid);
+ 	}
+ 	while (!list_empty(&clp->cl_revoked)) {
+-		dp = list_entry(reaplist.next, struct nfs4_delegation, dl_recall_lru);
++		dp = list_entry(clp->cl_revoked.next, struct nfs4_delegation, dl_recall_lru);
+ 		list_del_init(&dp->dl_recall_lru);
+ 		nfs4_put_stid(&dp->dl_stid);
+ 	}
+-- 
+2.1.0
+
diff --git a/kernel.spec b/kernel.spec
index eb6a9d6..2e7ee39 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -626,6 +626,9 @@ Patch26139: Bluetooth-ath3k-Add-support-Atheros-AR5B195-combo-Mi.patch
 #rhbz 1196825
 Patch26140: security-yama-Remove-unnecessary-selects-from-Kconfi.patch
 
+#rhbz 1185519
+Patch26141: NFS-fix-clp-cl_revoked-list-deletion-causing-softloc.patch
+
 # git clone ssh://git.fedorahosted.org/git/kernel-arm64.git, git diff master...devel
 Patch30000: kernel-arm64.patch
 Patch30001: kernel-arm64-fix-psci-when-pg.patch
@@ -1361,6 +1364,9 @@ ApplyPatch Bluetooth-ath3k-Add-support-Atheros-AR5B195-combo-Mi.patch
 #rhbz 1196825
 ApplyPatch security-yama-Remove-unnecessary-selects-from-Kconfi.patch
 
+#rhbz 1185519
+ApplyPatch NFS-fix-clp-cl_revoked-list-deletion-causing-softloc.patch
+
 %if 0%{?aarch64patches}
 ApplyPatch kernel-arm64.patch
 %ifnarch aarch64 # this is stupid, but i want to notice before secondary koji does.
@@ -2222,6 +2228,7 @@ fi
 # 
 %changelog
 * Mon Mar 02 2015 Josh Boyer <jwboyer at fedoraproject.org>
+- Add patch to fix nfsd soft lockup (rhbz 1185519)
 - Enable ET131X driver (rhbz 1197842)
 - Enable YAMA (rhbz 1196825)
 


More information about the scm-commits mailing list