]> git.hungrycats.org Git - linux/commitdiff
openrisc: fix the fix of copy_from_user()
authorGuenter Roeck <linux@roeck-us.net>
Sat, 17 Sep 2016 19:57:24 +0000 (12:57 -0700)
committerJiri Slaby <jslaby@suse.cz>
Thu, 29 Sep 2016 09:14:40 +0000 (11:14 +0200)
commit 8e4b72054f554967827e18be1de0e8122e6efc04 upstream.

Since commit acb2505d0119 ("openrisc: fix copy_from_user()"),
copy_from_user() returns the number of bytes requested, not the
number of bytes not copied.

Cc: Al Viro <viro@zeniv.linux.org.uk>
Fixes: acb2505d0119 ("openrisc: fix copy_from_user()")
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
arch/openrisc/include/asm/uaccess.h

index 908c0904bdd640ebf320da3569af99ce36f29a7c..d441480a4af4804c64d0c35fb8a3c235b054f05f 100644 (file)
@@ -276,7 +276,7 @@ copy_from_user(void *to, const void *from, unsigned long n)
        unsigned long res = n;
 
        if (likely(access_ok(VERIFY_READ, from, n)))
-               n = __copy_tofrom_user(to, from, n);
+               res = __copy_tofrom_user(to, from, n);
        if (unlikely(res))
                memset(to + (n - res), 0, res);
        return res;