Commit 30a30fcc authored by Christophe JAILLET's avatar Christophe JAILLET Committed by Chuck Lever
Browse files

nfsd: Propagate some error code returned by memdup_user()



Propagate the error code returned by memdup_user() instead of a hard coded
-EFAULT.

Suggested-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: default avatarChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Reviewed-by: default avatarJeff Layton <jlayton@kernel.org>
Signed-off-by: default avatarChuck Lever <chuck.lever@oracle.com>
parent d44899b8
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -808,7 +808,7 @@ __cld_pipe_inprogress_downcall(const struct cld_msg_v2 __user *cmsg,
				return -EFAULT;
			name.data = memdup_user(&ci->cc_name.cn_id, namelen);
			if (IS_ERR(name.data))
				return -EFAULT;
				return PTR_ERR(name.data);
			name.len = namelen;
			get_user(princhashlen, &ci->cc_princhash.cp_len);
			if (princhashlen > 0) {
@@ -817,7 +817,7 @@ __cld_pipe_inprogress_downcall(const struct cld_msg_v2 __user *cmsg,
						princhashlen);
				if (IS_ERR(princhash.data)) {
					kfree(name.data);
					return -EFAULT;
					return PTR_ERR(princhash.data);
				}
				princhash.len = princhashlen;
			} else
@@ -830,7 +830,7 @@ __cld_pipe_inprogress_downcall(const struct cld_msg_v2 __user *cmsg,
				return -EFAULT;
			name.data = memdup_user(&cnm->cn_id, namelen);
			if (IS_ERR(name.data))
				return -EFAULT;
				return PTR_ERR(name.data);
			name.len = namelen;
		}
		if (name.len > 5 && memcmp(name.data, "hash:", 5) == 0) {