summaryrefslogtreecommitdiffstats
path: root/lib/test_user_copy.c
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2017-02-22 11:21:22 -0800
committerKees Cook <keescook@chromium.org>2017-02-22 11:24:08 -0800
commit4deaa6fd00be2bf408dd06cdf0c40a1b59237879 (patch)
tree2d8ec935dd53ae136efd15e3d4dad8c7691a57b1 /lib/test_user_copy.c
parent4c5d7bc63775b40631b75f6c59a3a3005455262d (diff)
downloadlinux-0-day-4deaa6fd00be2bf408dd06cdf0c40a1b59237879.tar.gz
linux-0-day-4deaa6fd00be2bf408dd06cdf0c40a1b59237879.tar.xz
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>
Diffstat (limited to 'lib/test_user_copy.c')
-rw-r--r--lib/test_user_copy.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/test_user_copy.c b/lib/test_user_copy.c
index 6f335a3d4ae2e..1a8d71a685318 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) && \