public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
From: Marcelo Tosatti <mtosatti@redhat.com>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: Gleb Natapov <gleb@redhat.com>, kvm <kvm@vger.kernel.org>,
	Jan Kiszka <jan.kiszka@web.de>
Subject: Re: [PATCH v2] KVM: x86: Convert INIT and SIPI signals into synchronously handled requests
Date: Wed, 6 Mar 2013 20:04:11 -0300	[thread overview]
Message-ID: <20130306230411.GA26945@amt.cnet> (raw)
In-Reply-To: <5137C692.9090609@redhat.com>

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).


      reply	other threads:[~2013-03-06 23:04 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-03-04 21:41 [PATCH v2] KVM: x86: Convert INIT and SIPI signals into synchronously handled requests Jan Kiszka
2013-03-04 23:00 ` Jan Kiszka
2013-03-05  7:57   ` Gleb Natapov
2013-03-05  8:24     ` Jan Kiszka
2013-03-05  8:46       ` Gleb Natapov
2013-03-05  9:12         ` Jan Kiszka
2013-03-05  9:37           ` Gleb Natapov
2013-03-05 10:50             ` Paolo Bonzini
2013-03-05 13:25               ` Jan Kiszka
2013-03-05 13:33                 ` Gleb Natapov
2013-03-05 13:28               ` Gleb Natapov
2013-03-05 23:16 ` Marcelo Tosatti
2013-03-06  0:01   ` Marcelo Tosatti
2013-03-06  0:06   ` Marcelo Tosatti
2013-03-06  6:12     ` Paolo Bonzini
2013-03-06  7:57       ` Jan Kiszka
2013-03-06 21:30         ` Marcelo Tosatti
2013-03-06 21:39           ` Jan Kiszka
2013-03-06 21:50             ` Marcelo Tosatti
2013-03-06 21:58               ` Jan Kiszka
2013-03-06 21:19       ` Marcelo Tosatti
2013-03-06 22:43         ` Paolo Bonzini
2013-03-06 23:04           ` Marcelo Tosatti [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20130306230411.GA26945@amt.cnet \
    --to=mtosatti@redhat.com \
    --cc=gleb@redhat.com \
    --cc=jan.kiszka@web.de \
    --cc=kvm@vger.kernel.org \
    --cc=pbonzini@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox