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)
committerCatalin Marinas <catalin.marinas@arm.com>
Mon, 21 Nov 2016 17:33:47 +0000 (17:33 +0000)
commitbd38967d406fb4f9fca67d612db71b5d74cfb0f5
treefbcc9bd2e2f70c40387fe166de6f4e874c0d0bdb
parenta8ada146f5179793bbaff3c936d73147ccd47ba2
arm64: Factor out PAN enabling/disabling into separate uaccess_* macros

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>
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