|
|
|
|
|
|
|
|
|
|
xen-changelog
[Xen-changelog] [xen-unstable] [IA64] hypervisor needs to turn off psr.i
# HG changeset patch
# User Isaku Yamahata <yamahata@xxxxxxxxxxxxx>
# Date 1213078086 -32400
# Node ID 1feb98eb64eff4c97bf185047790f80e67501b3d
# Parent b844f87db11debd27bf464bf6aff7cc42456d486
[IA64] hypervisor needs to turn off psr.i after PAL_HALT_LIGHT
psr.i must be set to 0 on PAL entry and must be unchanged on PAL exit.
But do_block() turns on psr.i.
So we need to set it off at exit of PAL_HALT_LIGHT.
Signed-off-by: Akio Takebe <takebe_akio@xxxxxxxxxxxxxx>
---
xen/arch/ia64/xen/hypercall.c | 8 ++++++++
1 files changed, 8 insertions(+)
diff -r b844f87db11d -r 1feb98eb64ef xen/arch/ia64/xen/hypercall.c
--- a/xen/arch/ia64/xen/hypercall.c Tue Jun 10 15:00:31 2008 +0900
+++ b/xen/arch/ia64/xen/hypercall.c Tue Jun 10 15:08:06 2008 +0900
@@ -173,6 +173,14 @@ ia64_hypercall(struct pt_regs *regs)
/* do_block only pends a softirq */
do_softirq();
stop_timer(&v->arch.hlt_timer);
+ /* do_block() calls
+ * local_event_delivery_enable(),
+ * but PALL CALL must be called with
+ * psr.i = 0 and psr.i is unchanged.
+ * SDM vol.2 Part I 11.10.2
+ * PAL Calling Conventions.
+ */
+ local_event_delivery_disable();
}
regs->r8 = 0;
regs->r9 = 0;
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
- [Xen-changelog] [xen-unstable] [IA64] hypervisor needs to turn off psr.i after PAL_HALT_LIGHT,
Xen patchbot-unstable <=
|
|
|
|
|