[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1486322541-8206-73-git-send-email-w@1wt.eu>
Date: Sun, 5 Feb 2017 20:19:54 +0100
From: Willy Tarreau <w@....eu>
To: linux-kernel@...r.kernel.org, stable@...r.kernel.org,
linux@...ck-us.net
Cc: Trond Myklebust <trond.myklebust@...marydata.com>,
Anna Schumaker <Anna.Schumaker@...app.com>,
Willy Tarreau <w@....eu>
Subject: [PATCH 3.10 172/319] NFSv4: Open state recovery must account for file permission changes
From: Trond Myklebust <trond.myklebust@...marydata.com>
commit 304020fe48c6c7fff8b5a38f382b54404f0f79d3 upstream.
If the file permissions change on the server, then we may not be able to
recover open state. If so, we need to ensure that we mark the file
descriptor appropriately.
Signed-off-by: Trond Myklebust <trond.myklebust@...marydata.com>
Tested-by: Oleg Drokin <green@...uxhacker.ru>
Signed-off-by: Anna Schumaker <Anna.Schumaker@...app.com>
Signed-off-by: Willy Tarreau <w@....eu>
---
fs/nfs/nfs4state.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/fs/nfs/nfs4state.c b/fs/nfs/nfs4state.c
index 2bdaf57..7d45b38 100644
--- a/fs/nfs/nfs4state.c
+++ b/fs/nfs/nfs4state.c
@@ -1464,6 +1464,9 @@ restart:
"Zeroing state\n", __func__, status);
case -ENOENT:
case -ENOMEM:
+ case -EACCES:
+ case -EROFS:
+ case -EIO:
case -ESTALE:
/*
* Open state on this file cannot be recovered
--
2.8.0.rc2.1.gbe9624a
Powered by blists - more mailing lists