|
|
|
|
|
|
|
|
|
|
xen-ppc-devel
Re: [XenPPC] [pushed][ppc] cleanup deliver_ee()
On Mar 29, 2006, at 5:58 AM, jimix@xxxxxxxxxxxxxx wrote:
changeset: 9661:f1726cfcf72f
tag: tip
user: jimix@xxxxxxxxxxxxxxxxxxxxx
date: Wed Mar 29 06:57:49 2006 -0500
summary: [ppc] cleanup deliver_ee()
diff -r b7c9d7c30cf4 -r f1726cfcf72f xen/arch/ppc/external.c
--- a/xen/arch/ppc/external.c Tue Mar 28 10:16:38 2006 -0500
+++ b/xen/arch/ppc/external.c Wed Mar 29 06:57:49 2006 -0500
@@ -53,18 +53,9 @@ void deliver_ee(struct cpu_user_regs *re
/* trigger exception only if we have a pending irq, we're
resuming a guest
* (not the hypervisor), the guest is dom0, and it has MSR:EE
set. */
- if (!event_pending(current)) {
- if (current->vcpu_info->evtchn_upcall_pending) {
- printk("%s:0x%lx,0x%x\n", __func__,
- current->vcpu_info->evtchn_upcall_pending,
- current->vcpu_info->evtchn_upcall_mask);
- for (;;);
- }
- return;
- }
- if (regs->msr & MSR_HV) return;
- if (current->domain->domain_id != 0) return;
+ if (!event_pending(current)) return;
if (!(regs->msr & MSR_EE)) return;
+ BUG_ON(regs->msr & MSR_HV);
How is this a bug? deliver_ee() is called every time we return from an
exception, including when resuming into the hypervisor from a nested
interrupt.
--
Hollis Blanchard
IBM Linux Technology Center
_______________________________________________
Xen-ppc-devel mailing list
Xen-ppc-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ppc-devel
|
|
|
|
|