1
0
Fork 0
alistair23-linux/arch/arm64
Will Deacon b757b47a2f KVM: arm64: Don't inherit exec permission across page-table levels
If a stage-2 page-table contains an executable, read-only mapping at the
pte level (e.g. due to dirty logging being enabled), a subsequent write
fault to the same page which tries to install a larger block mapping
(e.g. due to dirty logging having been disabled) will erroneously inherit
the exec permission and consequently skip I-cache invalidation for the
rest of the block.

Ensure that exec permission is only inherited by write faults when the
new mapping is of the same size as the existing one. A subsequent
instruction abort will result in I-cache invalidation for the entire
block mapping.

Signed-off-by: Will Deacon <will@kernel.org>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Tested-by: Quentin Perret <qperret@google.com>
Reviewed-by: Quentin Perret <qperret@google.com>
Cc: Marc Zyngier <maz@kernel.org>
Cc: <stable@vger.kernel.org>
Link: https://lore.kernel.org/r/20200723101714.15873-1-will@kernel.org
2020-07-28 09:03:57 +01:00
..
boot IOMMU Updates for Linux v5.8 2020-06-08 11:42:23 -07:00
configs ARM: defconfig updates fopr 5.8 2020-06-04 19:54:15 -07:00
crypto Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 2020-06-01 12:00:10 -07:00
include KVM: arm64: Prevent vcpu_has_ptrauth from generating OOL functions 2020-07-28 09:03:57 +01:00
kernel arm64 merge window fixes for -rc1 2020-06-11 12:53:23 -07:00
kvm KVM: arm64: Don't inherit exec permission across page-table levels 2020-07-28 09:03:57 +01:00
lib Merge branch 'rwonce/rework' of git://git.kernel.org/pub/scm/linux/kernel/git/will/linux 2020-06-10 14:46:54 -07:00
mm mmap locking API: use coccinelle to convert mmap_sem rwsem call sites 2020-06-09 09:39:14 -07:00
net Merge branch 'for-next/bti' into for-next/core 2020-05-28 18:00:51 +01:00
xen arm64: xen: Use modern annotations for assembly functions 2020-01-09 16:09:42 +00:00
Kbuild arm64: add arch/arm64/Kbuild 2019-08-21 18:47:15 +01:00
Kconfig Kbuild updates for v5.8 (2nd) 2020-06-13 13:29:16 -07:00
Kconfig.debug arm64: mm: use ARCH_HAS_DEBUG_WX instead of arch defined 2020-06-03 20:09:50 -07:00
Kconfig.platforms This time around we have 4 lines of diff in the core framework, removing a 2020-06-10 11:42:19 -07:00
Makefile Kbuild updates for v5.8 2020-06-06 12:00:25 -07:00