android_kernel_sony_sdm845/arch
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Catalin Marinas 68f9032e77 arm64: Revert support for execute-only user mappings
commit 24cecc37746393432d994c0dbc251fb9ac7c5d72 upstream.

The ARMv8 64-bit architecture supports execute-only user permissions by
clearing the PTE_USER and PTE_UXN bits, practically making it a mostly
privileged mapping but from which user running at EL0 can still execute.

The downside, however, is that the kernel at EL1 inadvertently reading
such mapping would not trip over the PAN (privileged access never)
protection.

Revert the relevant bits from commit cab15ce604 ("arm64: Introduce
execute-only page access permissions") so that PROT_EXEC implies
PROT_READ (and therefore PTE_USER) until the architecture gains proper
support for execute-only user mappings.

Fixes: cab15ce604 ("arm64: Introduce execute-only page access permissions")
Cc: <stable@vger.kernel.org> # 4.9.x-
Acked-by: Will Deacon <will@kernel.org>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-01-12 11:24:15 +01:00
..
alpha alpha: Fix Eiger NR_IRQS to 128 2019-02-20 10:18:32 +01:00
arc ARC: perf: Accommodate big-endian CPU 2019-11-28 18:29:03 +01:00
arm libfdt: define INT32_MAX and UINT32_MAX in libfdt_env.h 2020-01-04 13:41:02 +01:00
arm64 arm64: Revert support for execute-only user mappings 2020-01-12 11:24:15 +01:00
avr32
blackfin pinctrl: adi2: Fix Kconfig build problem 2017-12-20 10:07:32 +01:00
c6x c6x/ptrace: Remove useless PTRACE_SETREGSET implementation 2017-03-31 10:31:46 +02:00
cris cris: Only build flash rescue image if CONFIG_ETRAX_AXISFLASHMAP is selected 2017-01-12 11:39:24 +01:00
frv futex: Remove duplicated code and fix undefined behaviour 2018-05-19 10:27:00 +02:00
h8300 h8300: use cc-cross-prefix instead of hardcoding h8300-unknown-linux- 2019-04-05 22:29:05 +02:00
hexagon hexagon: modify ffs() and fls() to return int 2018-10-10 08:53:21 +02:00
ia64 ia64:unwind: fix double free for mod->arch.init_unw_table 2019-10-05 12:30:20 +02:00
m32r
m68k m68k: fix command-line parsing when passed from u-boot 2019-11-28 18:28:22 +01:00
metag metag/uaccess: Check access_ok in strncpy_from_user 2017-05-25 15:44:46 +02:00
microblaze microblaze: move "... is ready" messages to arch/microblaze/Makefile 2019-12-05 15:34:24 +01:00
mips MIPS: Avoid VDSO ABI breakage due to global register variable 2020-01-12 11:24:12 +01:00
mn10300 mn10300/misalignment: Use SIGSEGV SEGV_MAPERR to report a failed user copy 2018-02-17 13:21:20 +01:00
nios2 nios2: reserve boot memory for device tree 2017-04-12 12:41:14 +02:00
openrisc openrisc: Fix broken paths to arch/or32 2019-12-05 15:34:41 +01:00
parisc parisc: Fix vmap memory leak in ioremap()/iounmap() 2019-10-29 09:15:24 +01:00
powerpc libfdt: define INT32_MAX and UINT32_MAX in libfdt_env.h 2020-01-04 13:41:02 +01:00
s390 s390/cpum_sf: Avoid SBD overflow condition in irq handler 2020-01-12 11:24:10 +01:00
score
sh pinctrl: sh-pfc: sh7734: Fix duplicate TCLK1_B 2020-01-04 13:39:31 +01:00
sparc sparc64: Rework xchg() definition to avoid warnings. 2019-11-28 18:28:40 +01:00
tile futex: Remove duplicated code and fix undefined behaviour 2018-05-19 10:27:00 +02:00
um um: Make GCOV depend on !KCOV 2019-12-05 15:34:56 +01:00
unicore32
x86 x86/mce: Fix possibly incorrect severity calculation on AMD 2020-01-04 13:41:04 +01:00
xtensa xtensa: fix TLB sanity checker 2019-12-21 10:42:30 +01:00
.gitignore
Kconfig cpu/hotplug: Provide knobs to control SMT 2018-08-15 18:14:46 +02:00