linux/tools/testing/selftests/kvm/arm64
Paolo Bonzini 76671054f9 KVM/arm64 changes for 7.3
- Add support for 'slot' based PMU events, paired with new UAPI that
    compels the user to select a specific PMU implementation
 
  - Lazy save/restore of vCPU state for pKVM, along with various fixes
    and cleanups to the management of vCPU state between the untrusted
    host and pKVM hypervisor
 
  - Disable traps of EL1 registers for nested hypervisors when FEAT_NV2p1
    is present, guaranteeing that EL2-specific register bits are stateful
    in the EL1 counterpart
 
  - Leverage FEAT_NV3 to avoid unnecessary ERET/TLBI traps when the scope
    of those instructions remains 'in host' (i.e. L1 kernel/userspace)
 
  - Pile of fixes for the management of the VNCR pseudo-TLB, such as
    under-invalidations and races with concurrent TLBIs on other vCPUs
 
  - Consolidate the non-protected and pKVM view of ICH_VTR_EL2 to a
    runtime-patched constant, allowing the same data to be shared with
    pKVM prior to dropping host privileges
 
  - Considerable pile of LLM-assisted fixes around the shop but mostly in
    the VGIC, our in-kernel generator of bugs (and sometimes interrupts)
 -----BEGIN PGP SIGNATURE-----
 
 iI0EABYKADUWIQSNXHjWXuzMZutrKNKivnWIJHzdFgUCaoZ/khccb2xpdmVyLnVw
 dG9uQGxpbnV4LmRldgAKCRCivnWIJHzdFkK7AP9zvAcDf+DVte8+mZjCMDrvNB1n
 UWsBnQkdZ1nDDYBJlwD8D1pvurK4ZV3UIl68IgpTqYKhMspCuOWDHrnBt1QyqQU=
 =2iPX
 -----END PGP SIGNATURE-----

Merge tag 'kvmarm-7.3' of https://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into HEAD

KVM/arm64 changes for 7.3

 - Add support for 'slot' based PMU events, paired with new UAPI that
   compels the user to select a specific PMU implementation

 - Lazy save/restore of vCPU state for pKVM, along with various fixes
   and cleanups to the management of vCPU state between the untrusted
   host and pKVM hypervisor

 - Disable traps of EL1 registers for nested hypervisors when FEAT_NV2p1
   is present, guaranteeing that EL2-specific register bits are stateful
   in the EL1 counterpart

 - Leverage FEAT_NV3 to avoid unnecessary ERET/TLBI traps when the scope
   of those instructions remains 'in host' (i.e. L1 kernel/userspace)

 - Pile of fixes for the management of the VNCR pseudo-TLB, such as
   under-invalidations and races with concurrent TLBIs on other vCPUs

 - Consolidate the non-protected and pKVM view of ICH_VTR_EL2 to a
   runtime-patched constant, allowing the same data to be shared with
   pKVM prior to dropping host privileges

 - Considerable pile of LLM-assisted fixes around the shop but mostly in
   the VGIC, our in-kernel generator of bugs (and sometimes interrupts)
2026-08-24 12:42:07 -04:00
..
aarch32_id_regs.c KVM: selftests: Use u64 instead of uint64_t 2026-04-20 14:54:16 -07:00
arch_timer_edge_cases.c KVM: selftests: Add kvm_sched_getaffinity() wrapper and convert users 2026-07-07 11:24:44 -07:00
arch_timer.c KVM: selftests: Use u32 instead of uint32_t 2026-04-20 14:54:16 -07:00
at.c KVM: arm64: selftests: Avoid testing the IMPDEF behavior 2026-04-01 17:29:21 +01:00
debug-exceptions.c KVM: arm64: selftests: Add a userspace watchpoint test 2026-07-30 23:43:24 -07:00
external_aborts.c KVM: arm64: selftests: Test effective value of HCR_EL2.AMO 2025-10-13 14:17:03 +01:00
get-reg-list.c Merge branch 'kvm-arm64/feat-nv3' into next 2026-08-19 12:27:53 -07:00
hello_el2.c KVM: arm64: selftests: Cope with arch silliness in EL2 selftest 2025-09-24 19:24:02 +01:00
host_sve.c KVM: arm64: selftests: Add test for SVE host corruption 2025-05-06 09:50:56 +01:00
hypercalls.c KVM: selftests: Use u32 instead of uint32_t 2026-04-20 14:54:16 -07:00
idreg-idst.c KVM: selftests: Use u64 instead of uint64_t 2026-04-20 14:54:16 -07:00
kvm-uuid.c KVM: arm64: selftests: Select SMCCC conduit based on current EL 2025-09-24 19:23:32 +01:00
mmio_sign_ext.c KVM: arm64: selftests: Add MMIO sign-extending load test 2026-07-06 17:18:34 +01:00
no-vgic.c KVM: arm64: selftests: Add missing GIC CDEN to no-vgic-v5 selftest 2026-05-23 15:07:41 +01:00
page_fault_test.c KVM: selftests: Replace "vaddr" with "gva" throughout 2026-04-20 14:54:17 -07:00
psci_test.c KVM: selftests: Use u32 instead of uint32_t 2026-04-20 14:54:16 -07:00
sea_to_user.c KVM: selftests: Replace "paddr" with "gpa" throughout 2026-04-20 14:54:17 -07:00
set_id_regs.c KVM selftests type renames for 7.1 2026-04-27 04:24:41 -04:00
smccc_filter.c KVM: selftests: Use u32 instead of uint32_t 2026-04-20 14:54:16 -07:00
stage2_block_transitions.c KVM: arm64: selftests: Add stage-2 block transition test 2026-07-31 00:11:57 -07:00
vcpu_width_config.c
vgic_init.c KVM: selftests: Use u32 instead of uint32_t 2026-04-20 14:54:16 -07:00
vgic_irq.c KVM: selftests: Add KVM syscall wrappers for pthread_{cancel,join}() 2026-07-31 13:54:47 -07:00
vgic_lpi_stress.c KVM: selftests: Add KVM syscall wrappers for pthread_{cancel,join}() 2026-07-31 13:54:47 -07:00
vgic_v5.c KVM: arm64: selftests: Improve error handling for GICv5 PPI selftest 2026-05-23 15:07:41 +01:00
vpmu_counter_access.c KVM: selftests: Use u8 instead of uint8_t 2026-04-20 14:54:17 -07:00