From: Bryan Schumaker Date: Thu, 9 Aug 2012 18:05:50 +0000 (-0400) Subject: NFS: return -ENOKEY when the upcall fails to map the name X-Git-Tag: v3.5.4~75 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=bdd78615ccef0cb43ab4214c9f315efdefedcd6e;p=thirdparty%2Fkernel%2Fstable.git NFS: return -ENOKEY when the upcall fails to map the name commit 12dfd080556124088ed61a292184947711b46cbe upstream. This allows the normal error-paths to handle the error, rather than making a special call to complete_request_key() just for this instance. Signed-off-by: Bryan Schumaker Tested-by: William Dauchy Signed-off-by: Trond Myklebust Signed-off-by: Greg Kroah-Hartman --- diff --git a/fs/nfs/idmap.c b/fs/nfs/idmap.c index bf184841f595e..a0972e9898f88 100644 --- a/fs/nfs/idmap.c +++ b/fs/nfs/idmap.c @@ -763,9 +763,8 @@ idmap_pipe_downcall(struct file *filp, const char __user *src, size_t mlen) } if (!(im.im_status & IDMAP_STATUS_SUCCESS)) { - ret = mlen; - complete_request_key(cons, -ENOKEY); - goto out_incomplete; + ret = -ENOKEY; + goto out; } namelen_in = strnlen(im.im_name, IDMAP_NAMESZ); @@ -782,7 +781,6 @@ idmap_pipe_downcall(struct file *filp, const char __user *src, size_t mlen) out: complete_request_key(cons, ret); -out_incomplete: return ret; }