[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] RE: [Xen-ia64-devel] lsapic deliver external IRQ
While Xen/ia64 is executing, interrupts are generally enabled (and, indeed, may even nest). If, while Xen is executing, an interrupt arrives that results in a pending interrupt for the currently active guest domain, the interrupt needs to be immediately delivered/injected. That's why vcpu_pend_interrupt is called when Xen is about to return to the active domain. Without this check it might be a very long time before the guest gets the interrupt. > -----Original Message----- > From: xen-ia64-devel-bounces@xxxxxxxxxxxxxxxxxxx > [mailto:xen-ia64-devel-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf > Of Dong, Eddie > Sent: Saturday, April 30, 2005 1:59 AM > To: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx > Subject: [Xen-ia64-devel] lsapic deliver external IRQ > > Dan: > I guess you will get all our code today or tomorrow, so we may > go to much details. > In ia64_leave_kernel assembly code, the current implementation > is invoking deliver_pending_interrupt to check if there is any pending > IRQ that can be injected and inject if it can. What in my mind is like > followings: > Within vcpu_pend_interrupt (when guest IRQ signal is fired), VMM > do deliver_pending_interrupt() to determine if there is any chance to > inject guest EX-IRQ. But It is possible that guest ex-IRQ is unable to > inject at that time and thus pending in vIRR due to vpsr.i or vtpr. > Within psr/tpr privillege resource update fault, if the guest enables > vpsr.i or updates TPR, VMM will call > deliver_pending_interrupt again to > re-determine if VMM needs to inject guest ex-IRQ. This is much like an > event driving guest EX-IRQ injecting mechanism while current > one is much > like a polling mechanism. > How about this? If you agree, I will provide a patch for this. > Eddie > > _______________________________________________ > Xen-ia64-devel mailing list > Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx > http://lists.xensource.com/xen-ia64-devel > _______________________________________________ Xen-ia64-devel mailing list Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-ia64-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |