summaryrefslogtreecommitdiff
path: root/fs/nfs
diff options
context:
space:
mode:
authorAndy Ryan <genanr@allantgroup.com>2006-11-07 23:36:26 +0300
committerTrond Myklebust <Trond.Myklebust@netapp.com>2006-12-06 18:46:26 +0300
commit46b9f8e1484352f09f229107ba2a758fe386d7f7 (patch)
tree544f971bf1034fa34c0d9b5cf2f5aeaabc3d413b /fs/nfs
parent8aca67f0ae2d8811165c22326825a645cc8e1b48 (diff)
downloadlinux-46b9f8e1484352f09f229107ba2a758fe386d7f7.tar.xz
NFS Exclusive open not supported bug
When trying to open a file with the O_EXCL flag over NFS on a server that does not support exclusive mode, the file does not open. The reason, rpc_call_sync returns a errno number, and not the nfs error number. I fixed it by changing the status check in nfs3proc.c. Either this is how it should be fixed, or rpc_call_sync should be fixed to return the NFS error. Signed-off-by: Andy Ryan <genanr@allantgroup.com> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs')
-rw-r--r--fs/nfs/nfs3proc.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/nfs/nfs3proc.c b/fs/nfs/nfs3proc.c
index e5f128ffc32d..9d7ff4f83faf 100644
--- a/fs/nfs/nfs3proc.c
+++ b/fs/nfs/nfs3proc.c
@@ -369,7 +369,7 @@ again:
/* If the server doesn't support the exclusive creation semantics,
* try again with simple 'guarded' mode. */
- if (status == NFSERR_NOTSUPP) {
+ if (status == -ENOTSUPP) {
switch (arg.createmode) {
case NFS3_CREATE_EXCLUSIVE:
arg.createmode = NFS3_CREATE_GUARDED;