From: Vitaly Osipov Date: Sun, 4 May 2014 04:14:26 +0000 (+1000) Subject: staging: lustre: return -EFAULT instead of bytes remaining X-Git-Tag: firefly_0821_release~176^2~3465^2~39^2~723 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=a9c08b0ac1c4f022bda7e2c7aa11869da33a8058;p=firefly-linux-kernel-4.4.55.git staging: lustre: return -EFAULT instead of bytes remaining return -EFAULT instead of the value returned by copy_from_user() Signed-off-by: Vitaly Osipov Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/lustre/lustre/libcfs/linux/linux-module.c b/drivers/staging/lustre/lustre/libcfs/linux/linux-module.c index 9a3b07bd2fac..581b4728c6ca 100644 --- a/drivers/staging/lustre/lustre/libcfs/linux/linux-module.c +++ b/drivers/staging/lustre/lustre/libcfs/linux/linux-module.c @@ -45,14 +45,12 @@ int libcfs_ioctl_getdata(char *buf, char *end, void *arg) struct libcfs_ioctl_hdr *hdr; struct libcfs_ioctl_data *data; int orig_len; - int err; hdr = (struct libcfs_ioctl_hdr *)buf; data = (struct libcfs_ioctl_data *)buf; - err = copy_from_user(buf, (void *)arg, sizeof(*hdr)); - if (err) - return err; + if (copy_from_user(buf, (void *)arg, sizeof(*hdr))) + return -EFAULT; if (hdr->ioc_version != LIBCFS_IOCTL_VERSION) { CERROR("PORTALS: version mismatch kernel vs application\n"); @@ -71,9 +69,8 @@ int libcfs_ioctl_getdata(char *buf, char *end, void *arg) } orig_len = hdr->ioc_len; - err = copy_from_user(buf, (void *)arg, hdr->ioc_len); - if (err) - return err; + if (copy_from_user(buf, (void *)arg, hdr->ioc_len)) + return -EFAULT; if (orig_len != data->ioc_len) return -EINVAL;