diff options
author | J. Bruce Fields <bfields@fieldses.org> | 2006-11-08 20:44:59 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-11-08 21:29:25 -0500 |
commit | 088406bcf66d6c7fd8a5c04c00aa410ae9077403 (patch) | |
tree | d41aeb42daff2e25cc4c4071d890128bf4ce95f5 | |
parent | 51f65ebccf55121832c265838f93949f898b12ff (diff) |
[PATCH] nfsd: fix spurious error return from nfsd_create in async case
Commit 6264d69d7df654ca64f625e9409189a0e50734e9 modified the nfsd_create()
error handling in such a way that nfsd_create will usually return
nfserr_perm even when succesful, if the export has the async export option.
This introduced a regression that could cause mkdir() to always return a
permissions error, even though the directory in question was actually
succesfully created.
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Acked-by: NeilBrown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r-- | fs/nfsd/vfs.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/nfsd/vfs.c b/fs/nfsd/vfs.c index 1a7ad8c983d1..bb4d926e4487 100644 --- a/fs/nfsd/vfs.c +++ b/fs/nfsd/vfs.c | |||
@@ -1177,7 +1177,7 @@ nfsd_create(struct svc_rqst *rqstp, struct svc_fh *fhp, | |||
1177 | /* | 1177 | /* |
1178 | * Get the dir op function pointer. | 1178 | * Get the dir op function pointer. |
1179 | */ | 1179 | */ |
1180 | err = nfserr_perm; | 1180 | err = 0; |
1181 | switch (type) { | 1181 | switch (type) { |
1182 | case S_IFREG: | 1182 | case S_IFREG: |
1183 | host_err = vfs_create(dirp, dchild, iap->ia_mode, NULL); | 1183 | host_err = vfs_create(dirp, dchild, iap->ia_mode, NULL); |