To help avoid an architecture failing to correctly check kernel/user boundaries when handling copy_to_user, copy_from_user, put_user, or get_user, perform some simple tests and fail to load if any of them behave unexpectedly. Specifically, this is to make sure there is a way to notice if things like what was fixed in commit 8404663f81d2 ("ARM: 7527/1: uaccess: explicitly check __user pointer when !CPU_USE_DOMAINS") ever regresses again, for any architecture. Additionally, adds new "user" selftest target, which loads this module. Signed-off-by: Kees Cook <keescook@chromium.org> Cc: Rusty Russell <rusty@rustcorp.com.au> Cc: Joe Perches <joe@perches.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
14 lines
282 B
Makefile
14 lines
282 B
Makefile
# Makefile for user memory selftests
|
|
|
|
# No binaries, but make sure arg-less "make" doesn't trigger "run_tests"
|
|
all:
|
|
|
|
run_tests: all
|
|
@if /sbin/modprobe test_user_copy ; then \
|
|
rmmod test_user_copy; \
|
|
echo "user_copy: ok"; \
|
|
else \
|
|
echo "user_copy: [FAIL]"; \
|
|
exit 1; \
|
|
fi
|