From: Paolo Bonzini Date: Mon, 3 Mar 2025 14:09:37 +0000 (-0500) Subject: KVM: x86: do not allow re-enabling quirks X-Git-Tag: v6.16-rc1~78^2~17^2^2~7 X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=9966b7822b3f49b3aea5d926ece4bc92f1f0a700;p=linux-2.6-block.git KVM: x86: do not allow re-enabling quirks Allowing arbitrary re-enabling of quirks puts a limit on what the quirks themselves can do, since you cannot assume that the quirk prevents a particular state. More important, it also prevents KVM from disabling a quirk at VM creation time, because userspace can always go back and re-enable that. Signed-off-by: Paolo Bonzini --- diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c index df2da8b511c7..cdc9c7b96511 100644 --- a/arch/x86/kvm/x86.c +++ b/arch/x86/kvm/x86.c @@ -6533,7 +6533,7 @@ int kvm_vm_ioctl_enable_cap(struct kvm *kvm, break; fallthrough; case KVM_CAP_DISABLE_QUIRKS: - kvm->arch.disabled_quirks = cap->args[0]; + kvm->arch.disabled_quirks |= cap->args[0]; r = 0; break; case KVM_CAP_SPLIT_IRQCHIP: {