[RFC PATCH v2 0/9] KVM: Enable Nested Virt selftests
Eric Auger
eauger at redhat.com
Wed May 28 06:28:06 PDT 2025
Hi Ganapatrao,
On 5/12/25 12:52 PM, Ganapatrao Kulkarni wrote:
> This patch series makes the selftest work with NV enabled. The guest code
> is run in vEL2 instead of EL1. We add a command line option to enable
> testing of NV. The NV tests are disabled by default.
For commodity, I would add in the coverletter that for all tests
enhanced with vEL2 testing "-g 1" option shall be added to force that mode.
I don't really get how you chose tests capable to run at vEL2 and
excluded others? Wouldn't it make sense to have a way to run all tests
in either mode?
Thanks
Eric
>
> Modified around 12 selftests in this series.
>
> Changes since v1:
> - Updated NV helper functions as per comments [1].
> - Modified existing testscases to run guest code in vEL2.
>
> [1] https://lkml.iu.edu/hypermail/linux/kernel/2502.0/07001.html
>
> Ganapatrao Kulkarni (9):
> KVM: arm64: nv: selftests: Add support to run guest code in vEL2.
> KVM: arm64: nv: selftests: Add simple test to run guest code in vEL2
> KVM: arm64: nv: selftests: Enable hypervisor timer tests to run in
> vEL2
> KVM: arm64: nv: selftests: enable aarch32_id_regs test to run in vEL2
> KVM: arm64: nv: selftests: Enable vgic tests to run in vEL2
> KVM: arm64: nv: selftests: Enable set_id_regs test to run in vEL2
> KVM: arm64: nv: selftests: Enable test to run in vEL2
> KVM: selftests: arm64: Extend kvm_page_table_test to run guest code in
> vEL2
> KVM: arm64: nv: selftests: Enable page_fault_test test to run in vEL2
>
> tools/testing/selftests/kvm/Makefile.kvm | 2 +
> tools/testing/selftests/kvm/arch_timer.c | 8 +-
> .../selftests/kvm/arm64/aarch32_id_regs.c | 34 ++++-
> .../testing/selftests/kvm/arm64/arch_timer.c | 118 +++++++++++++++---
> .../selftests/kvm/arm64/nv_guest_hypervisor.c | 68 ++++++++++
> .../selftests/kvm/arm64/page_fault_test.c | 35 +++++-
> .../testing/selftests/kvm/arm64/set_id_regs.c | 57 ++++++++-
> tools/testing/selftests/kvm/arm64/vgic_init.c | 54 +++++++-
> tools/testing/selftests/kvm/arm64/vgic_irq.c | 27 ++--
> .../selftests/kvm/arm64/vgic_lpi_stress.c | 19 ++-
> .../testing/selftests/kvm/guest_print_test.c | 32 +++++
> .../selftests/kvm/include/arm64/arch_timer.h | 16 +++
> .../kvm/include/arm64/kvm_util_arch.h | 3 +
> .../selftests/kvm/include/arm64/nv_util.h | 45 +++++++
> .../selftests/kvm/include/arm64/vgic.h | 1 +
> .../testing/selftests/kvm/include/kvm_util.h | 3 +
> .../selftests/kvm/include/timer_test.h | 1 +
> .../selftests/kvm/kvm_page_table_test.c | 30 ++++-
> tools/testing/selftests/kvm/lib/arm64/nv.c | 46 +++++++
> .../selftests/kvm/lib/arm64/processor.c | 61 ++++++---
> tools/testing/selftests/kvm/lib/arm64/vgic.c | 8 ++
> 21 files changed, 604 insertions(+), 64 deletions(-)
> create mode 100644 tools/testing/selftests/kvm/arm64/nv_guest_hypervisor.c
> create mode 100644 tools/testing/selftests/kvm/include/arm64/nv_util.h
> create mode 100644 tools/testing/selftests/kvm/lib/arm64/nv.c
>
More information about the linux-arm-kernel
mailing list