[ 23/82] NFSv4: Map NFS4ERR_SHARE_DENIED into an EACCES error instead of EIO
From: Greg KH <gregkh@linuxfoundation.org>
Date: 2012-06-07 04:16:59
Also in:
lkml
From: Greg KH <gregkh@linuxfoundation.org>
Date: 2012-06-07 04:16:59
Also in:
lkml
3.4-stable review patch. If anyone has any objections, please let me know. ------------------ From: Trond Myklebust <redacted> commit fb13bfa7e1bcfdcfdece47c24b62f1a1cad957e9 upstream. If a file OPEN is denied due to a share lock, the resulting NFS4ERR_SHARE_DENIED is currently mapped to the default EIO. This patch adds a more appropriate mapping, and brings Linux into line with what Solaris 10 does. See https://bugzilla.kernel.org/show_bug.cgi?id=43286 Signed-off-by: Trond Myklebust <redacted> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> --- fs/nfs/nfs4proc.c | 2 ++ 1 file changed, 2 insertions(+)
--- a/fs/nfs/nfs4proc.c
+++ b/fs/nfs/nfs4proc.c@@ -101,6 +101,8 @@ static int nfs4_map_errors(int err) case -NFS4ERR_BADOWNER: case -NFS4ERR_BADNAME: return -EINVAL; + case -NFS4ERR_SHARE_DENIED: + return -EACCES; default: dprintk("%s could not handle NFSv4 error %d\n", __func__, -err);