On 4/24/2024 12:53 AM, Sean Christopherson wrote:
Fix a goof where KVM fails to re-initialize the set of supported VM types, resulting in KVM overreporting the set of supported types when a vendor module is reloaded with incompatible settings. E.g. unload kvm-intel.ko, reload with ept=0, and KVM will incorrectly treat SW_PROTECTED_VM as supported.
Hah, this reminds me of the bug of msrs_to_save[] and etc. 7a5ee6edb42e ("KVM: X86: Fix initialization of MSR lists") The series looks good to me. With v2 to move the reset of kvm_cap and set the hardcoded caps earlier, Reviewed-by: Xiaoyao Li <xiaoyao.li@xxxxxxxxx>
Fix a similar long-standing bug with supported_mce_cap that is much less benign, and then harden against us making the same mistake in the future.
>
Sean Christopherson (3): KVM: x86: Fully re-initialize supported_vm_types on vendor module load KVM: x86: Fully re-initialize supported_mce_cap on vendor module load KVM: x86: Explicitly zero kvm_caps during vendor module load arch/x86/kvm/x86.c | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) base-commit: a96cb3bf390eebfead5fc7a2092f8452a7997d1b