From mboxrd@z Thu Jan 1 00:00:00 1970 From: Gleb Natapov Subject: Re: [PATCH] KVM: x86: Convert INIT and SIPI signals into synchronously handled events Date: Tue, 12 Mar 2013 15:25:17 +0200 Message-ID: <20130312132517.GC11223@redhat.com> References: <513F1529.3040309@siemens.com> <513F1A63.9070107@redhat.com> <513F2688.2080902@siemens.com> <513F273F.5020108@siemens.com> <513F2A11.7030904@redhat.com> <513F2AAD.4050008@siemens.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Paolo Bonzini , Marcelo Tosatti , kvm To: Jan Kiszka Return-path: Received: from mx1.redhat.com ([209.132.183.28]:20170 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751749Ab3CLNZV (ORCPT ); Tue, 12 Mar 2013 09:25:21 -0400 Content-Disposition: inline In-Reply-To: <513F2AAD.4050008@siemens.com> Sender: kvm-owner@vger.kernel.org List-ID: On Tue, Mar 12, 2013 at 02:16:29PM +0100, Jan Kiszka wrote: > On 2013-03-12 14:13, Paolo Bonzini wrote: > > Il 12/03/2013 14:01, Jan Kiszka ha scritto: > >>>>>> For example, should kvm_arch_interrupt_allowed return zero if the VCPU > >>>>>> is in the INIT_RECEIVED state? > >>>> > >>>> Yeah, that probably makes sense beyond async_pf. > >> Wait: If you perform a proper reset on INIT already, we would clear IF > >> thus prevent also async_pf injections. On the other hand, > >> kvm_arch_can_inject_async_page_present returns true if apf.msr_val & > >> KVM_ASYNC_PF_ENABLED is not set - shouldn't that be cleared on reset as > >> well? Hmm... > > > > So if you split the reset (which is done on INIT) from setting up CS on > > SIPI, you kill two birds with a stone, or at least one and a half: you > > clear IF as you wrote above, and INIT on BSP almost works (the only > > missing bit should be setting the mp_state to KVM_MP_STATE_RUNNABLE). > > ...unless the async_pf MSR is cleared on reset as well. > It is: vcpu->arch.apf.msr_val = 0; -- Gleb.