[PATCH 3/4] alpha: Return directly after a failed copy_from_user() or getname() in two functions

From: SF Markus Elfring
Date: Wed Jan 18 2017 - 06:55:31 EST


From: Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx>
Date: Wed, 18 Jan 2017 11:30:06 +0100

Return directly after a call of the function "copy_from_user" or "getname"
failed at the beginning.

Signed-off-by: Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx>
---
arch/alpha/kernel/osf_sys.c | 14 ++++----------
1 file changed, 4 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/kernel/osf_sys.c b/arch/alpha/kernel/osf_sys.c
index 73ff5d698591..4310bc79d09c 100644
--- a/arch/alpha/kernel/osf_sys.c
+++ b/arch/alpha/kernel/osf_sys.c
@@ -454,16 +454,13 @@ osf_ufs_mount(const char __user *dirname,
struct cdfs_args tmp;
struct filename *devname;

- retval = -EFAULT;
if (copy_from_user(&tmp, args, sizeof(tmp)))
- goto out;
+ return -EFAULT;
devname = getname(tmp.devname);
- retval = PTR_ERR(devname);
if (IS_ERR(devname))
- goto out;
+ return PTR_ERR(devname);
retval = do_mount(devname->name, dirname, "ext2", flags, NULL);
putname(devname);
- out:
return retval;
}

@@ -475,16 +472,13 @@ osf_cdfs_mount(const char __user *dirname,
struct cdfs_args tmp;
struct filename *devname;

- retval = -EFAULT;
if (copy_from_user(&tmp, args, sizeof(tmp)))
- goto out;
+ return -EFAULT;
devname = getname(tmp.devname);
- retval = PTR_ERR(devname);
if (IS_ERR(devname))
- goto out;
+ return PTR_ERR(devname);
retval = do_mount(devname->name, dirname, "iso9660", flags, NULL);
putname(devname);
- out:
return retval;
}

--
2.11.0

--
To unsubscribe from this list: send the line "unsubscribe linux-alpha" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html