Skip to contentSkip to conversation

Patch "Revert "NFSv4: Remove incorrect check in can_open_delegated()"" has been added to the 4.2-stable tree

PATCH [email protected] 1 participant 1 message Sep 26, 2015

Subsystems (2)
lore
Share & tools
lore

[email protected]

author maintainer Applied
#0 lore raw

This is a note to let you know that I've just added the patch titled

Revert "NFSv4: Remove incorrect check in can_open_delegated()"

to the 4.2-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
revert-nfsv4-remove-incorrect-check-in-can_open_delegated.patch
and it can be found in the queue-4.2 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.

Quoted 1 line

From 36319608e28701c07cad80ae3be8b0fdfb1ab40f Mon Sep 17 00:00:00 2001

From: Trond Myklebust <[email protected]>
Date: Wed, 19 Aug 2015 00:14:20 -0500
Subject: Revert "NFSv4: Remove incorrect check in can_open_delegated()"

From: Trond Myklebust <[email protected]>

commit 36319608e28701c07cad80ae3be8b0fdfb1ab40f upstream.

This reverts commit 4e379d36c050b0117b5d10048be63a44f5036115.

This commit opens up a race between the recovery code and the open code.

---
 fs/nfs/nfs4proc.c |    2 ++
 1 file changed, 2 insertions(+)
fs/nfs/nfs4proc.c +2 -0
@@ -1156,6 +1156,8 @@ static int can_open_delegated(struct nfs
 		return 0;
 	if ((delegation->type & fmode) != fmode)
 		return 0;
+	if (test_bit(NFS_DELEGATION_NEED_RECLAIM, &delegation->flags))
+		return 0;
 	if (test_bit(NFS_DELEGATION_RETURNING, &delegation->flags))
 		return 0;
 	nfs_mark_delegation_referenced(delegation);

Patches currently in stable-queue which might be from [email protected] are

queue-4.2/nfs41-flexfiles-zero-out-ds-write-wcc.patch queue-4.2/nfs-nfs_set_pgio_error-sometimes-misses-errors.patch queue-4.2/nfs-fix-a-null-pointer-dereference-of-migration-recovery-ops-for-v4.2-client.patch queue-4.2/sunrpc-xs_reset_transport-must-mark-the-connection-as-disconnected.patch queue-4.2/nfs-fix-truncated-client-owner-id-without-proto-type.patch queue-4.2/nfs-don-t-let-the-ctime-override-attribute-barriers.patch queue-4.2/sunrpc-fix-a-thinko-in-xs_connect.patch queue-4.2/nfsv4-don-t-set-setattr-for-o_rdonly-o_excl.patch queue-4.2/nfs41-flexfiles-update-inode-after-write-finishes.patch queue-4.2/nfsv4.1-pnfs-fix-borken-function-_same_data_server_addrs_locked.patch queue-4.2/nfsv4-force-a-post-op-attribute-update-when-holding-a-delegation.patch queue-4.2/nfsv4.1-pnfs-fix-atomicity-of-commit-list-updates.patch queue-4.2/nfsv4.1-flexfiles-fix-a-protocol-error-in-layoutreturn.patch queue-4.2/revert-nfsv4-remove-incorrect-check-in-can_open_delegated.patch queue-4.2/nfsv4.1-fix-a-protocol-issue-with-close-stateids.patch