summaryrefslogtreecommitdiffstats
path: root/arch/x86/include/asm/uaccess.h
diff options
context:
space:
mode:
authorPeter Zijlstra <peterz@infradead.org>2019-04-03 09:39:48 +0200
committerIngo Molnar <mingo@kernel.org>2019-04-03 11:02:19 +0200
commite74deb11931ff682b59d5b9d387f7115f689698e (patch)
tree6d9698ce16b48c95ecff5ca40f8b2701941b9583 /arch/x86/include/asm/uaccess.h
parent88e4718275c1bddca6f61f300688b4553dc8584b (diff)
downloadlinux-e74deb11931ff682b59d5b9d387f7115f689698e.tar.bz2
x86/uaccess: Introduce user_access_{save,restore}()
Introduce common helpers for when we need to safely suspend a uaccess section; for instance to generate a {KA,UB}SAN report. Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Cc: Borislav Petkov <bp@alien8.de> Cc: Josh Poimboeuf <jpoimboe@redhat.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'arch/x86/include/asm/uaccess.h')
-rw-r--r--arch/x86/include/asm/uaccess.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/x86/include/asm/uaccess.h b/arch/x86/include/asm/uaccess.h
index ae5783b5fab0..5ca7b91faf67 100644
--- a/arch/x86/include/asm/uaccess.h
+++ b/arch/x86/include/asm/uaccess.h
@@ -715,6 +715,9 @@ static __must_check __always_inline bool user_access_begin(const void __user *pt
#define user_access_begin(a,b) user_access_begin(a,b)
#define user_access_end() __uaccess_end()
+#define user_access_save() smap_save()
+#define user_access_restore(x) smap_restore(x)
+
#define unsafe_put_user(x, ptr, label) \
__put_user_size((__typeof__(*(ptr)))(x), (ptr), sizeof(*(ptr)), label)