summaryrefslogtreecommitdiffstats
path: root/arch/s390/include
diff options
context:
space:
mode:
authorVasily Gorbik <gor@linux.ibm.com>2019-04-23 15:36:36 +0200
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2019-04-24 13:28:46 +0200
commit01eb42afb45719cb41bb32c278e068073738899d (patch)
tree9abe2b37f7a86b1a8dee78064c6592104bc2e71e /arch/s390/include
parent1c410fd6a561af452aba282b1cd3cabef2080d72 (diff)
downloadlinux-stable-01eb42afb45719cb41bb32c278e068073738899d.tar.gz
linux-stable-01eb42afb45719cb41bb32c278e068073738899d.tar.bz2
linux-stable-01eb42afb45719cb41bb32c278e068073738899d.zip
s390/kasan: fix strncpy_from_user kasan checks
arch/s390/lib/uaccess.c is built without kasan instrumentation. Kasan checks are performed explicitly in copy_from_user/copy_to_user functions. But since those functions could be inlined, calls from files like uaccess.c with instrumentation disabled won't generate kasan reports. This is currently the case with strncpy_from_user function which was revealed by newly added kasan test. Avoid inlining of copy_from_user/copy_to_user when the kernel is built with kasan support to make sure kasan checks are fully functional. Signed-off-by: Vasily Gorbik <gor@linux.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/include')
-rw-r--r--arch/s390/include/asm/uaccess.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/s390/include/asm/uaccess.h b/arch/s390/include/asm/uaccess.h
index 007fcb9aeeb8..bd2fd9a7821d 100644
--- a/arch/s390/include/asm/uaccess.h
+++ b/arch/s390/include/asm/uaccess.h
@@ -55,8 +55,10 @@ raw_copy_from_user(void *to, const void __user *from, unsigned long n);
unsigned long __must_check
raw_copy_to_user(void __user *to, const void *from, unsigned long n);
+#ifndef CONFIG_KASAN
#define INLINE_COPY_FROM_USER
#define INLINE_COPY_TO_USER
+#endif
#ifdef CONFIG_HAVE_MARCH_Z10_FEATURES