linux/tools/testing/selftests/kvm
Paolo Bonzini c2f24f140c KVM fixes for 7.3-rcN
- Fix a brown paper bag bug where KVM would incorrectly treat Intel PMU MSRs
    as valid on AMD.
 
  - Fix a regression in the hardware disable selftest where it checked the wrong
    macro when detecting glibc support (breaks at least musl).
 
  - Never clear KVM_REQ_VM_DEAD so that dead VMs stay dead, which is especially
    important for KVM_BUG_ON() flows, which often guard more dangerous bugs.
 
  - Re-pend GET_NESTED_STATE_PAGES if getting the pages fails, to fix a bug
    where KVM would let userspace run a broken setup with stale vmcs12 pages.
 
  - Fix a class of bugs where KVM would fail to fill kvm_run exit fields if
    getting nested pages failed.
 
  - Treat reserved entries in the memory attributes xarray as "no attributes",
    to fix false positives when checking for mixed attributes.
 
  - Fix memcg accounting for the memory attributes xarray (the xarray library
    subtly requires the xarray to be configured for accounting upfront; the gfp
    flags taken at runtime are used only rarely).
 
  - Don't pre-reserve xarray entries when storing empty attributes, as storing
    NULL must not require memory allocation (KVM and other subsystems heavily
    rely on this behavior).
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEKTobbabEP7vbhhN9OlYIJqCjN/0FAmq3A78ACgkQOlYIJqCj
 N/1uVA//TVDznH49htPNV4dh7vfiE8oF9ka4e9KTPA2eMdDeNVInNXBz0ZbJCdNN
 Hm7iZZfk8yx0JCCGXdp8EoYg66iwulBr0KZXRP2U2LoyiRELA1VtGGOLUVP3PXjF
 hElXD56+RrkJJSucINlFU7kSfl2hY/Jbaq87HVBLpXp8iY3stBbLdgMT1ReLdorO
 s9i2uJRqHKjtSG330qDYEG1TtRAdUehgRbxbbJVuOEYtU37tCvX6ai8dEjZAvxYo
 1VZOD05ITo12HUXPiZjIMoNTujQnZKmGYlBYczWlfOmkY/tN6SV8M41srV3ZcK0k
 XGOQM6tOzbVTWaSH/pW1krklnOFAbnL6QzHzb3enHZfUN8AikHPDyfsJWzt/s0f/
 ATTQk03OYL4fJMQSQ778EI6S4PcOzY9HiBxDXM5ySpUv1uyXw8ZFsQSdH/TYTMhi
 Dce42r5rlGa1vAKHwI1Xya2su3REhWzxYxGpUOg/PtRRqWvL2RMrHArzEd6zu+Ti
 jPinuQuXYcT1FTCa5S39NWhU4gWpjw8Pvs9VuUYSCDYxZCaqQ2YheYgsAcgPqgfE
 hS43XVmmOB/tXGsvu+/YuEfbzNV/mHOuJBcjBnnsBP3d6EFB02FPKg4/LYiXujYo
 OocUbSB7bKd87W3B+Ys3QmgOtZh4qX/aLYusa2vQ4Dp9ujXqcWs=
 =LG0B
 -----END PGP SIGNATURE-----

Merge tag 'kvm-x86-fixes-7.3-rc5' of https://github.com/kvm-x86/linux into HEAD

KVM fixes for 7.3-rcN

 - Fix a brown paper bag bug where KVM would incorrectly treat Intel PMU MSRs
   as valid on AMD.

 - Fix a regression in the hardware disable selftest where it checked the wrong
   macro when detecting glibc support (breaks at least musl).

 - Never clear KVM_REQ_VM_DEAD so that dead VMs stay dead, which is especially
   important for KVM_BUG_ON() flows, which often guard more dangerous bugs.

 - Re-pend GET_NESTED_STATE_PAGES if getting the pages fails, to fix a bug
   where KVM would let userspace run a broken setup with stale vmcs12 pages.

 - Fix a class of bugs where KVM would fail to fill kvm_run exit fields if
   getting nested pages failed.

 - Treat reserved entries in the memory attributes xarray as "no attributes",
   to fix false positives when checking for mixed attributes.

 - Fix memcg accounting for the memory attributes xarray (the xarray library
   subtly requires the xarray to be configured for accounting upfront; the gfp
   flags taken at runtime are used only rarely).

 - Don't pre-reserve xarray entries when storing empty attributes, as storing
   NULL must not require memory allocation (KVM and other subsystems heavily
   rely on this behavior).
2026-09-26 00:40:07 -04:00
..
arm64 KVM: arm64: selftests: Test empty SMCCC filter range at base 0 2026-09-15 15:09:57 -07:00
include KVM x86 misc changes for 7.3 2026-08-18 13:41:51 +02:00
lib KVM selftests changes for 7.3, part 2 2026-08-18 13:24:04 +02:00
loongarch KVM: LoongArch: selftests: Add FPU/LSX/LASX test cases 2026-08-10 12:21:58 +08:00
riscv KVM selftests changes for 7.3, part 1 2026-08-18 13:16:16 +02:00
s390 KVM: selftests: Add KVM syscall wrappers for pthread_{cancel,join}() 2026-07-31 13:54:47 -07:00
x86 KVM x86 misc changes for 7.3 2026-08-18 13:41:51 +02:00
.gitignore
access_tracking_perf_test.c KVM: selftests: Include sys/mman.h *and* linux/mman.h, via kvm_syscalls.h 2026-05-13 09:53:43 -07:00
arch_timer.c KVM: selftests: Add KVM syscall wrappers for pthread_{cancel,join}() 2026-07-31 13:54:47 -07:00
coalesced_io_test.c KVM: selftests: Use u8 instead of uint8_t 2026-04-20 14:54:17 -07:00
config KVM: selftests: Add CONFIG_EVENTFD for irqfd selftest 2025-07-10 06:20:20 -07:00
demand_paging_test.c KVM: selftests: Add kvm_gettid() wrapper and convert users 2026-07-07 11:24:44 -07:00
dirty_log_perf_test.c KVM: selftests: Rename guest_rng to kvm_rng 2026-07-07 11:24:43 -07:00
dirty_log_test.c KVM: selftests: Add KVM syscall wrappers for pthread_{cancel,join}() 2026-07-31 13:54:47 -07:00
get-reg-list.c KVM: selftests: Use u8 instead of uint8_t 2026-04-20 14:54:17 -07:00
guest_memfd_test.c KVM guest_memfd changes for 7.2 2026-06-12 10:08:52 +02:00
guest_print_test.c KVM: selftests: Use u32 instead of uint32_t 2026-04-20 14:54:16 -07:00
hardware_disable_test.c KVM: selftests: Use __GLIBC__, not _GNU_SOURCE, to detect actual glibc 2026-09-11 12:04:36 -07:00
irq_test.c KVM: selftests: Add KVM syscall wrappers for pthread_{cancel,join}() 2026-07-31 13:54:47 -07:00
irqfd_test.c KVM: selftests: Add KVM syscall wrappers for pthread_{cancel,join}() 2026-07-31 13:54:47 -07:00
kvm_binary_stats_test.c KVM: selftests: Define wrappers for common syscalls to assert success 2025-10-20 06:30:42 -07:00
kvm_create_max_vcpus.c KVM: selftests: Adjust number of files rlimit for all "standard" VMs 2025-02-14 07:02:12 -08:00
kvm_page_table_test.c KVM: selftests: Add KVM syscall wrappers for pthread_{cancel,join}() 2026-07-31 13:54:47 -07:00
Makefile KVM: selftests: Forcefully override ARCH from x86_64 to x86 2025-10-20 08:55:24 -07:00
Makefile.kvm KVM: arm64: selftests: Add ITS table save tests 2026-09-15 15:09:56 -07:00
memslot_modification_stress_test.c KVM: selftests: Replace "u64 gpa" with "gpa_t" throughout 2026-04-20 14:54:17 -07:00
memslot_perf_test.c KVM: selftests: Add KVM syscall wrappers for pthread_{cancel,join}() 2026-07-31 13:54:47 -07:00
mmu_stress_test.c KVM: selftests: Add KVM syscall wrappers for pthread_{cancel,join}() 2026-07-31 13:54:47 -07:00
pre_fault_memory_test.c KVM: selftests: Add KVM syscall wrappers for pthread_{cancel,join}() 2026-07-31 13:54:47 -07:00
rseq_test.c KVM: selftests: Add KVM syscall wrappers for pthread_{cancel,join}() 2026-07-31 13:54:47 -07:00
set_memory_region_test.c KVM: selftests: Add KVM syscall wrappers for pthread_{cancel,join}() 2026-07-31 13:54:47 -07:00
settings
steal_time.c KVM: selftests: fix steal_time for arm64 with host page size > 4K 2026-09-15 15:09:57 -07:00
system_counter_offset_test.c KVM: selftests: Use u64 instead of uint64_t 2026-04-20 14:54:16 -07:00
vm_types_test.c KVM: selftests: Add a test for KVM_CREATE_VM VM type enforcement 2026-07-31 15:47:25 -07:00