arm64: Factor out PAN enabling/disabling into separate uaccess_* macros
authorCatalin Marinas <catalin.marinas@arm.com>
Fri, 1 Jul 2016 13:58:21 +0000 (14:58 +0100)
committerHaibo Chen <haibo.chen@nxp.com>
Thu, 12 Apr 2018 10:46:18 +0000 (18:46 +0800)
commit196cb1c57f31f73b5f887ae2d10b217934b013cd
treeb6f75e7e08ab00b12f022ab02444b07d158d7598
parent95dc12bcd2651ad51a6becab9659582a9e8fe4ae
arm64: Factor out PAN enabling/disabling into separate uaccess_* macros

commit bd38967d406 upstream.

This patch moves the directly coded alternatives for turning PAN on/off
into separate uaccess_{enable,disable} macros or functions. The asm
macros take a few arguments which will be used in subsequent patches.

Note that any (unlikely) access that the compiler might generate between
uaccess_enable() and uaccess_disable(), other than those explicitly
specified by the user access code, will not be protected by PAN.

Cc: Will Deacon <will.deacon@arm.com>
Cc: James Morse <james.morse@arm.com>
Cc: Kees Cook <keescook@chromium.org>
Reviewed-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Alex Shi <alex.shi@linaro.org>
arch/arm64/include/asm/futex.h
arch/arm64/include/asm/uaccess.h
arch/arm64/kernel/armv8_deprecated.c
arch/arm64/lib/clear_user.S
arch/arm64/lib/copy_from_user.S
arch/arm64/lib/copy_in_user.S
arch/arm64/lib/copy_to_user.S