KVM: arm/arm64: Re-factor setting the Stage 2 entry to exec on fault
authorPunit Agrawal <punit.agrawal@arm.com>
Tue, 11 Dec 2018 17:10:35 +0000 (17:10 +0000)
committerMarc Zyngier <marc.zyngier@arm.com>
Tue, 18 Dec 2018 15:14:47 +0000 (15:14 +0000)
commit6396b852e46e562f4742ed0a9042b537eb26b8aa
tree7746e50553ff09b19ff1fabe800b4f912291bca0
parent3f58bf63455588a260b6abc8761c48bc8977b919
KVM: arm/arm64: Re-factor setting the Stage 2 entry to exec on fault

Stage 2 fault handler marks a page as executable if it is handling an
execution fault or if it was a permission fault in which case the
executable bit needs to be preserved.

The logic to decide if the page should be marked executable is
duplicated for PMD and PTE entries. To avoid creating another copy
when support for PUD hugepages is introduced refactor the code to
share the checks needed to mark a page table entry as executable.

Signed-off-by: Punit Agrawal <punit.agrawal@arm.com>
Reviewed-by: Suzuki K Poulose <suzuki.poulose@arm.com>
Reviewed-by: Christoffer Dall <christoffer.dall@arm.com>
Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
virt/kvm/arm/mmu.c