The following patches bring in
commit 20af540051e1c1f7a7d9b9e4613c1ecc53ded4a6 Author: James Morse james.morse@arm.com Date: Wed Jul 22 19:05:54 2015 +0100
arm64: kernel: Add support for Privileged Access Never commit 338d4f49d6f7114a017d294ccf7374df4f998edc upstream. 'Privileged Access Never' is a new arm8.1 feature which prevents privileged code from accessing any virtual address where read or write access is also permitted at EL0. This patch enables the PAN feature on all CPUs, and modifies {get,put}_user helpers temporarily to permit access. This will catch kernel bugs where user memory is accessed directly. 'Unprivileged loads and stores' using ldtrb et al are unaffected by PAN.
along with an additional 11 patches it depends on.
Daniel Thompson (1): arm64: alternative: Provide if/else/endif assembler macros
James Morse (6): arm64: kernel: Move config_sctlr_el1 arm64: kernel: Add cpuid_feature_extract_field() for 4bit sign extension arm64: kernel: Add cpufeature 'enable' callback arm64: kernel: Add min_field_value and use '>=' for feature detection arm64: kernel: Add optional CONFIG_ parameter to ALTERNATIVE() arm64: kernel: Add support for Privileged Access Never
Marc Zyngier (3): arm64: alternative: Introduce feature for GICv3 CPU interface arm64: alternative: Merge alternative-asm.h into alternative.h arm64: alternative: Work around .inst assembler bugs
Suzuki K. Poulose (1): arm64: Generalise msr_s/mrs_s operations
Will Deacon (1): arm64: lib: use pair accessors for copy_*_user routines
arch/arm64/Kconfig | 14 ++++ arch/arm64/include/asm/alternative-asm.h | 29 -------- arch/arm64/include/asm/alternative.h | 109 +++++++++++++++++++++++++++++-- arch/arm64/include/asm/cpufeature.h | 17 ++++- arch/arm64/include/asm/cputype.h | 3 - arch/arm64/include/asm/futex.h | 8 +++ arch/arm64/include/asm/processor.h | 2 + arch/arm64/include/asm/sysreg.h | 40 ++++++++++-- arch/arm64/include/asm/uaccess.h | 11 ++++ arch/arm64/include/uapi/asm/ptrace.h | 1 + arch/arm64/kernel/armv8_deprecated.c | 19 +++--- arch/arm64/kernel/cpufeature.c | 50 ++++++++++++++ arch/arm64/kernel/entry.S | 2 +- arch/arm64/lib/clear_user.S | 8 +++ arch/arm64/lib/copy_from_user.S | 25 +++++-- arch/arm64/lib/copy_in_user.S | 25 +++++-- arch/arm64/lib/copy_to_user.S | 25 +++++-- arch/arm64/mm/cache.S | 2 +- arch/arm64/mm/fault.c | 16 +++++ 19 files changed, 333 insertions(+), 73 deletions(-) delete mode 100644 arch/arm64/include/asm/alternative-asm.h