[PATCH] knfsd: nfsd4: fix open flag passing
[sfrench/cifs-2.6.git] / fs / nfsd / vfs.c
index f916b170e136bd4c764b243bef1c4d013e1700e9..423e1ba070442797f65ce9da1ac0ebdbf16b9306 100644 (file)
@@ -673,7 +673,10 @@ nfsd_open(struct svc_rqst *rqstp, struct svc_fh *fhp, int type,
                goto out_nfserr;
 
        if (access & MAY_WRITE) {
-               flags = O_WRONLY|O_LARGEFILE;
+               if (access & MAY_READ)
+                       flags = O_RDWR|O_LARGEFILE;
+               else
+                       flags = O_WRONLY|O_LARGEFILE;
 
                DQUOT_INIT(inode);
        }