Re: [PATCH v2] KVM: x86: Convert INIT and SIPI signals into synchronously handled requests

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Mar 06, 2013 at 11:43:30PM +0100, Paolo Bonzini wrote:
> Il 06/03/2013 22:19, Marcelo Tosatti ha scritto:
> > Vcpu should only invoke kvm_emulate_halt if it has been through a
> > KVM_MP_STATE_UNINITIALIZED ->  KVM_MP_STATE_INIT_RECEIVED ->
> > KVM_MP_STATE_SIPI_RECEIVED -> KVM_MP_STATE_RUNNABLE transition.
> > 
> > If it has been through that, how can a KVM_MP_STATE_INIT_RECEIVED be
> > overwritten? 
> > 
> > That is, KVM_MP_STATE_RUNNABLE (precondition for kvm_emulate_halt) is
> > only reachable if KVM_MP_STATE_INIT_RECEIVED/KVM_MP_STATE_SIPI_RECEIVED
> > have not been overwritten. 
> 
> You can always go back to the KVM_MP_STATE_INIT_RECEIVED state; either
> by an APIC write or by various soft resets (port 92h, keyboard
> controller, port cf9h) that aren't emulated correctly right now.

Indeed (and BSP not ignoring INIT is also broken in KVM, as you pointed
our earlier).

So the stress test in case is guest using APIC INIT after initial MP
initialization protocol (therefore reproducible without nVMX).

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux