diff options
author | Arnd Bergmann <arnd@arndb.de> | 2017-02-22 11:21:22 -0800 |
---|---|---|
committer | Kees Cook <keescook@chromium.org> | 2017-02-22 11:24:08 -0800 |
commit | 4deaa6fd00be2bf408dd06cdf0c40a1b59237879 (patch) | |
tree | 2d8ec935dd53ae136efd15e3d4dad8c7691a57b1 | |
parent | 4c5d7bc63775b40631b75f6c59a3a3005455262d (diff) |
usercopy: ARM NOMMU has no 64-bit get_user
On a NOMMU ARM kernel, we get this link error:
ERROR: "__get_user_bad" [lib/test_user_copy.ko] undefined!
The problem is that the extended get_user/put_user definitions
were only added for the normal (MMU based) case.
We could add it for NOMMU as well, but it seems easier to just not
call it, since no other code needs it.
Fixes: 4c5d7bc63775 ("usercopy: Add tests for all get_user() sizes")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Kees Cook <keescook@chromium.org>
-rw-r--r-- | lib/test_user_copy.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/test_user_copy.c b/lib/test_user_copy.c index 6f335a3d4ae2..1a8d71a68531 100644 --- a/lib/test_user_copy.c +++ b/lib/test_user_copy.c @@ -30,7 +30,8 @@ * As there doesn't appear to be anything that can safely determine * their capability at compile-time, we just have to opt-out certain archs. */ -#if BITS_PER_LONG == 64 || (!defined(CONFIG_AVR32) && \ +#if BITS_PER_LONG == 64 || (!(defined(CONFIG_ARM) && !defined(MMU)) && \ + !defined(CONFIG_AVR32) && \ !defined(CONFIG_BLACKFIN) && \ !defined(CONFIG_M32R) && \ !defined(CONFIG_M68K) && \ |