linux/tools/testing/selftests/kvm
Paolo Bonzini 0499add8ef KVM fixes for 6.19-rc1
- Add a missing "break" to fix param parsing in the rseq selftest.
 
  - Apply runtime updates to the _current_ CPUID when userspace is setting
    CPUID, e.g. as part of vCPU hotplug, to fix a false positive and to avoid
    dropping the pending update.
 
  - Disallow toggling KVM_MEM_GUEST_MEMFD on an existing memslot, as it's not
    supported by KVM and leads to a use-after-free due to KVM failing to unbind
    the memslot from the previously-associated guest_memfd instance.
 
  - Harden against similar KVM_MEM_GUEST_MEMFD goofs, and prepare for supporting
    flags-only changes on KVM_MEM_GUEST_MEMFD memlslots, e.g. for dirty logging.
 
  - Set exit_code[63:32] to -1 (all 0xffs) when synthesizing a nested
    SVM_EXIT_ERR (a.k.a. VMEXIT_INVALID) #VMEXIT, as VMEXIT_INVALID is defined
    as -1ull (a 64-bit value).
 
  - Update SVI when activating APICv to fix a bug where a post-activation EOI
    for an in-service IRQ would effective be lost due to SVI being stale.
 
  - Immediately refresh APICv controls (if necessary) on a nested VM-Exit
    instead of deferring the update via KVM_REQ_APICV_UPDATE, as the request is
    effectively ignored because KVM thinks the vCPU already has the correct
    APICv settings.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEKTobbabEP7vbhhN9OlYIJqCjN/0FAmk5p18ACgkQOlYIJqCj
 N/0YlBAAvnhGVmqVc3nhd313mo4YGk+Z1RxpO1sJAsGJu42Ir/QqMC9aPHy9ejcS
 hfoIXzPFdVJEztuBUWRje9mvocQnXSAWjXFTaoqJE/LXVnh96Txhh4nvCJSQzyrn
 5/0uk5ZD5dfPVyPtYk6G9w3q9kgYv3Q6O4UEU48ru0q6wcu5FmRshULfHVZnlyNa
 ZALY4k8QzsdSzB0XWusmD0OQpjGRyUR79mqEzUybg4E/b0LAK9Nv6Fr5YgGq7g0N
 AU1T1t+/hMN7x4/24RrxNBO+skPKmCi7nM3iVKqilQSO2fZzrNVUOkr/tGb+5EL6
 iw4JHJQjp9LlzRVxP3QNZp8Bg+knMVRdbSzAkdomDRguMgpu/TGAe7TtkzfEyVel
 VAQUVpDaThp0FK5wAdyMKvpOQqTGjl3KKtM2zs187v+eJJcjJQnIsTk4zW5mmvk4
 Y6YOqbulSNAqVOmJj7oqrDxWgjD75PtXlPFEoOsJM0AuL/sHBo8bKT18cGBwVGmH
 lJoNfkS45kofG4i0zIBwzQuvKjDIQU7ZdVXa2MLL1aqDlyu/66Hll0vCJLAMvHz5
 eb65WQ6Br97e0BNuzVJJNyTGQ3Pr9DdSkTpPkOalwQ3VEyZwcKm3OsB/N0FsgP2V
 ta7vZQ5b6Sn568A9LAgXGhcnQ7mA31VBoNCkLLowxIT4kxVKGUY=
 =4iuO
 -----END PGP SIGNATURE-----

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

KVM fixes for 6.19-rc1

 - Add a missing "break" to fix param parsing in the rseq selftest.

 - Apply runtime updates to the _current_ CPUID when userspace is setting
   CPUID, e.g. as part of vCPU hotplug, to fix a false positive and to avoid
   dropping the pending update.

 - Disallow toggling KVM_MEM_GUEST_MEMFD on an existing memslot, as it's not
   supported by KVM and leads to a use-after-free due to KVM failing to unbind
   the memslot from the previously-associated guest_memfd instance.

 - Harden against similar KVM_MEM_GUEST_MEMFD goofs, and prepare for supporting
   flags-only changes on KVM_MEM_GUEST_MEMFD memlslots, e.g. for dirty logging.

 - Set exit_code[63:32] to -1 (all 0xffs) when synthesizing a nested
   SVM_EXIT_ERR (a.k.a. VMEXIT_INVALID) #VMEXIT, as VMEXIT_INVALID is defined
   as -1ull (a 64-bit value).

 - Update SVI when activating APICv to fix a bug where a post-activation EOI
   for an in-service IRQ would effective be lost due to SVI being stale.

 - Immediately refresh APICv controls (if necessary) on a nested VM-Exit
   instead of deferring the update via KVM_REQ_APICV_UPDATE, as the request is
   effectively ignored because KVM thinks the vCPU already has the correct
   APICv settings.
2025-12-18 18:38:45 +01:00
..
arm64 ARM: 2025-12-05 17:01:20 -08:00
include KVM/arm64 updates for 6.19 2025-12-02 18:36:26 +01:00
lib KVM/arm64 updates for 6.19 2025-12-02 18:36:26 +01:00
loongarch KVM: LoongArch: selftests: Add time counter test case 2025-11-28 14:49:48 +08:00
riscv KVM: riscv: selftests: Add SBI MPXY extension to get-reg-list 2025-11-24 09:55:36 +05:30
s390 KVM: s390: Add capability that forwards operation exceptions 2025-11-21 10:26:03 +01:00
x86 KVM fixes for 6.19-rc1 2025-12-18 18:38:45 +01:00
.gitignore KVM: selftests: Provide empty 'all' and 'clean' targets for unsupported ARCHs 2024-12-18 14:15:03 -08:00
Makefile KVM: selftests: Forcefully override ARCH from x86_64 to x86 2025-10-20 08:55:24 -07:00
Makefile.kvm - SCA rework 2025-12-02 18:58:47 +01:00
access_tracking_perf_test.c KVM: riscv: selftests: Add missing headers for new testcases 2025-09-16 10:53:55 +05:30
arch_timer.c KVM: selftests: Convert arch_timer tests to common helpers to pin task 2025-07-09 09:33:42 -07:00
coalesced_io_test.c KVM: selftests: Add a test for coalesced MMIO (and PIO on x86) 2024-08-29 19:38:33 -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 treewide updates for 6.10: 2024-05-12 03:18:11 -04:00
dirty_log_perf_test.c KVM: arm64: selftests: Create a VGICv3 for 'default' VMs 2025-09-24 19:23:32 +01:00
dirty_log_test.c KVM: arm64: selftests: Create a VGICv3 for 'default' VMs 2025-09-24 19:23:32 +01:00
get-reg-list.c KVM: arm64: selftests: Provide helper for getting default vCPU target 2025-09-24 19:23:32 +01:00
guest_memfd_test.c KVM: selftests: Add guest_memfd tests for mmap and NUMA policy support 2025-10-20 06:30:45 -07:00
guest_print_test.c KVM: selftests: Open code vcpu_run() equivalent in guest_printf test 2024-08-29 16:25:06 -07:00
hardware_disable_test.c KVM: selftests: Remove unused macro in the hardware disable test 2024-10-30 13:51:46 -07:00
irqfd_test.c KVM: selftests: Fix irqfd_test for non-x86 architectures 2025-10-13 14:17:03 +01: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 Revert "kvm: selftests: move base kvm_util.h declarations to kvm_util_base.h" 2024-04-29 12:54:13 -07:00
memslot_modification_stress_test.c KVM: riscv: selftests: Add missing headers for new testcases 2025-09-16 10:53:55 +05:30
memslot_perf_test.c KVM: riscv: selftests: Add missing headers for new testcases 2025-09-16 10:53:55 +05:30
mmu_stress_test.c KVM: selftests: Stop using __virt_pg_map() directly in tests 2025-11-21 10:15:14 -08:00
pre_fault_memory_test.c KVM: selftests: Use "gpa" and "gva" for local variable names in pre-fault test 2025-10-20 08:59:30 -07:00
rseq_test.c KVM: selftests: Add missing "break" in rseq_test's param parsing 2025-12-02 08:49:10 -08:00
set_memory_region_test.c KVM: selftests: Add wrappers for mmap() and munmap() to assert success 2025-10-10 14:25:28 -07:00
settings selftests: kvm: Raise the default timeout to 120 seconds 2021-02-09 08:17:08 -05:00
steal_time.c KVM: arm64: selftests: Select SMCCC conduit based on current EL 2025-09-24 19:23:32 +01:00
system_counter_offset_test.c KVM: selftests: Remove redundant newlines 2024-01-29 08:39:14 -08:00