linux/tools/testing/selftests/kvm/lib/aarch64
Oliver Upton 7a16142505 KVM: arm64: selftests: Don't identity map the ucall MMIO hole
Currently the ucall MMIO hole is placed immediately after slot0, which
is a relatively safe address in the PA space. However, it is possible
that the same address has already been used for something else (like the
guest program image) in the VA space. At least in my own testing,
building the vgic_irq test with clang leads to the MMIO hole appearing
underneath gicv3_ops.

Stop identity mapping the MMIO hole and instead find an unused VA to map
to it. Yet another subtle detail of the KVM selftests library is that
virt_pg_map() does not update vm->vpages_mapped. Switch over to
virt_map() instead to guarantee that the chosen VA isn't to something
else.

Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
Message-Id: <20221209015307.1781352-6-oliver.upton@linux.dev>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2022-12-27 06:00:50 -05:00
..
gic.c KVM: selftests: aarch64: Add GICv3 register accessor library functions 2021-12-28 19:23:13 +00:00
gic_private.h KVM: selftests: aarch64: Add GICv3 register accessor library functions 2021-12-28 19:23:13 +00:00
gic_v3.c kvm: selftests: aarch64: fix some vgic related comments 2022-02-08 15:18:58 +00:00
handlers.S KVM: selftests: Add exception handling support for aarch64 2021-06-14 09:06:23 +01:00
processor.c KVM: arm64: selftests: Align VA space allocator with TTBR0 2022-12-09 09:13:35 +01:00
spinlock.c KVM: arm64: selftests: Add light-weight spinlock support 2021-10-17 11:17:21 +01:00
ucall.c KVM: arm64: selftests: Don't identity map the ucall MMIO hole 2022-12-27 06:00:50 -05:00
vgic.c KVM: selftests: Convert vgic_irq away from VCPU_ID 2022-06-11 11:47:01 -04:00