]> err.no Git - linux-2.6/commitdiff
NFS Exclusive open not supported bug
authorAndy Ryan <genanr@allantgroup.com>
Tue, 7 Nov 2006 20:36:26 +0000 (14:36 -0600)
committerTrond Myklebust <Trond.Myklebust@netapp.com>
Wed, 6 Dec 2006 15:46:26 +0000 (10:46 -0500)
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>
fs/nfs/nfs3proc.c

index e5f128ffc32dd7ee368946768f9ce762a44c4fe7..9d7ff4f83fafb482cf4b698054abf15225f3003d 100644 (file)
@@ -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;