mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-05 00:56:40 +07:00
powerpc/mm: Return directly after a failed __copy_from_user() in sys_subpage_prot()
This function already has multiple exit points, so there's no harm adding another. Although it looks odd to return directly in a function which takes a lock, we've actually just dropped the mmap_sem in this code, so there's really no reason to go via a label. And it means we can drop the unhelpfully named out2 label. Signed-off-by: Markus Elfring <elfring@users.sourceforge.net> [mpe: Rewrite change log] Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
This commit is contained in:
parent
3c4b66a6d0
commit
a967f161ab
@ -248,9 +248,8 @@ long sys_subpage_prot(unsigned long addr, unsigned long len, u32 __user *map)
|
||||
nw = (next - addr) >> PAGE_SHIFT;
|
||||
|
||||
up_write(&mm->mmap_sem);
|
||||
err = -EFAULT;
|
||||
if (__copy_from_user(spp, map, nw * sizeof(u32)))
|
||||
goto out2;
|
||||
return -EFAULT;
|
||||
map += nw;
|
||||
down_write(&mm->mmap_sem);
|
||||
|
||||
@ -262,6 +261,5 @@ long sys_subpage_prot(unsigned long addr, unsigned long len, u32 __user *map)
|
||||
err = 0;
|
||||
out:
|
||||
up_write(&mm->mmap_sem);
|
||||
out2:
|
||||
return err;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user