Re: [PATCH 2/2] KVM: x86: Forbid KVM_SET_CPUID{,2} after KVM_RUN

From: Paolo Bonzini
Date: Sun Jan 02 2022 - 12:32:02 EST


On 12/27/21 18:32, Igor Mammedov wrote:
Tweaked and queued nevertheless, thanks.
it seems this patch breaks VCPU hotplug, in scenario:

1. hotunplug existing VCPU (QEMU stores VCPU file descriptor in parked cpus list)
2. hotplug it again (unsuspecting QEMU reuses stored file descriptor when recreating VCPU)

RHBZ:https://bugzilla.redhat.com/show_bug.cgi?id=2028337#c11


The fix here would be (in QEMU) to not call KVM_SET_CPUID2 again. However, we need to work around it in KVM, and allow KVM_SET_CPUID2 if the data passed to the ioctl is the same that was set before.

Paolo