On Tue, 10 Jun 2025 12:54:01 -0700, Sean Christopherson wrote: > Copy KVM selftests' X86_PROPERTY_* infrastructure (multi-bit CPUID > fields), and use the properties to clean up various warts. The SEV code > is particular makes things much harder than they need to be. > > Note, this applies on kvm-x86 next. > > v2: > - Avoid tabs immediatedly after #defines. [Dapeng] > - Sqaush the arch events vs. GP counters fixes into one patch. [Dapeng] > - Mask available arch events based on enumerate bit vector width. [Dapeng] > - Add a missing space in a printf argument. [Liam] > - Collect reviews. [Dapeng, Liam] > > [...] Applied to kvm-x86 next, thanks! [01/14] x86: Encode X86_FEATURE_* definitions using a structure https://github.com/kvm-x86/kvm-unit-tests/commit/361f623cb12e [02/14] x86: Add X86_PROPERTY_* framework to retrieve CPUID values https://github.com/kvm-x86/kvm-unit-tests/commit/77ea6ad194b2 [03/14] x86: Use X86_PROPERTY_MAX_VIRT_ADDR in is_canonical() https://github.com/kvm-x86/kvm-unit-tests/commit/9a3266bf023e [04/14] x86: Implement get_supported_xcr0() using X86_PROPERTY_SUPPORTED_XCR0_{LO,HI} https://github.com/kvm-x86/kvm-unit-tests/commit/587db1e85faa [05/14] x86: Add and use X86_PROPERTY_INTEL_PT_NR_RANGES https://github.com/kvm-x86/kvm-unit-tests/commit/25e295a5bb8f [06/14] x86/pmu: Mark all arch events as available on AMD, and rename fields https://github.com/kvm-x86/kvm-unit-tests/commit/6c9e1907ecaa [07/14] x86/pmu: Mark Intel architectural event available iff X <= CPUID.0xA.EAX[31:24] https://github.com/kvm-x86/kvm-unit-tests/commit/92dc5f7ab459 [08/14] x86/pmu: Use X86_PROPERTY_PMU_* macros to retrieve PMU information https://github.com/kvm-x86/kvm-unit-tests/commit/215e67c112bc [09/14] x86/sev: Use VC_VECTOR from processor.h https://github.com/kvm-x86/kvm-unit-tests/commit/5d80d64dc482 [10/14] x86/sev: Skip the AMD SEV test if SEV is unsupported/disabled https://github.com/kvm-x86/kvm-unit-tests/commit/031a0b02be0a [11/14] x86/sev: Define and use X86_FEATURE_* flags for CPUID 0x8000001F https://github.com/kvm-x86/kvm-unit-tests/commit/b643ae6207da [12/14] x86/sev: Use X86_PROPERTY_SEV_C_BIT to get the AMD SEV C-bit location https://github.com/kvm-x86/kvm-unit-tests/commit/38147316d147 [13/14] x86/sev: Use amd_sev_es_enabled() to detect if SEV-ES is enabled https://github.com/kvm-x86/kvm-unit-tests/commit/8f6aee89b941 [14/14] x86: Move SEV MSR definitions to msr.h https://github.com/kvm-x86/kvm-unit-tests/commit/cebc6ef778a7 -- https://github.com/kvm-x86/kvm-unit-tests/tree/next