From mboxrd@z Thu Jan 1 00:00:00 1970 From: Izik Eidus Subject: Re: [PATCH 2/2] make the injection of interrupts run atsleepable mode. Date: Wed, 17 Oct 2007 08:54:58 +0200 Message-ID: <4715B1C2.9090706@qumranet.com> References: <4713DAD3.90904@qumranet.com> <10EA09EFD8728347A513008B6B0DA77A023A7914@pdsmsx411.ccr.corp.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Cc: kvm-devel To: "Dong, Eddie" Return-path: In-Reply-To: <10EA09EFD8728347A513008B6B0DA77A023A7914-wq7ZOvIWXbNpB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: kvm-devel-bounces-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org Errors-To: kvm-devel-bounces-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org List-Id: kvm.vger.kernel.org Dong, Eddie wrote: > Not quit understand the following code. If we just set > a vcpu request bits w/o real irq injection, we can't resume > to guest? Othrewise, the guest is in interruptable state and can > see irq pending, but it doesn't get the interrupt. > > Something missing? > thx,eddie > > > --- a/drivers/kvm/vmx.c > +++ b/drivers/kvm/vmx.c > @@ -1678,10 +1678,11 @@ static void inject_rmode_irq(struct kvm_vcpu > *vcpu, int irq) > vmcs_writel(GUEST_RSP, (vmcs_readl(GUEST_RSP) & ~0xffff) | (sp - > 6)); > } > > -static void vmx_inject_irq(struct kvm_vcpu *vcpu, int irq) > +void vmx_inject_irq(struct kvm_vcpu *vcpu, int irq) > { > if (vcpu->rmode.active) { > - inject_rmode_irq(vcpu, irq); > + vcpu->inject_rmode_irq = irq; > + set_bit(VMX_INJECT_RMODE_IRQ, &vcpu->requests); > return; > } > vmcs_write32(VM_ENTRY_INTR_INFO_FIELD, > > this come wont be applied anyway, avi wrote a better solution that was applied. ------------------------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/