|
|
 |
|
|
|
|
|
|
|
xen-ia64-devel
[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
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
- [Xen-ia64-devel] lsapic deliver external IRQ,
Dong, Eddie <=
|
|
|
|
|