From mboxrd@z Thu Jan 1 00:00:00 1970 From: Scott Wood Date: Fri, 02 Sep 2011 18:17:21 +0000 Subject: Re: [PATCH 1/5] KVM: PPC: booke: Fix int_pending calculation for Message-Id: <4E611DB1.5070503@freescale.com> List-Id: References: <20110826233139.GA30607@schlenkerla.am.freescale.net> In-Reply-To: <20110826233139.GA30607@schlenkerla.am.freescale.net> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: kvm-ppc@vger.kernel.org On 09/02/2011 08:53 AM, Alexander Graf wrote: > On 08/27/2011 01:31 AM, Scott Wood wrote: >> int_pending was only being lowered if a bit in pending_exceptions >> was cleared during exception delivery -- but for interrupts, we clear >> it during IACK/TSR emulation. This caused paravirt for enabling >> MSR[EE] to be ineffective. > > But that means that int_pending can still be 1 even though there is none > pending as we don't get the call to deliver_interrupts when it gets > lowered. Please create a common function to remove a bit from > pending_exceptions and do the check there. I can do that if you want, but kvmppc_core_deliver_interrupts() should always get called before we return to the guest. Dequeues that are asynchronous to a guest exit should be very rare, and would be cured on the first subsequent guest exit. -Scott