Mailing List Archive

[xen-unstable] [IA64] Fix PAL_HALT of dom0 for panic_notifier_list
# HG changeset patch
# User Alex Williamson <alex.williamson@hp.com>
# Date 1185899440 21600
# Node ID 039f2ccb1e383a52eb44ba3ed80859548932b95e
# Parent d69a57b29e3fa38a044010c12f366f15244e4257
[IA64] Fix PAL_HALT of dom0 for panic_notifier_list

Currently dom0 cannot call panic_notifier_list in panic().
This is caused by PAL_HALT called from smp_send_stop().
When dom0 calls PAL_HALT, Hypervisor reset system.
So if dom0 panic, we cannot use panic_notifier_list.
Current PAL_HALT of xen is different from ia64 specification.
This patch fixes this issue.

Signed-off-by: Akio Takebe <takebe_akio@jp.fujitsu.com>
---
xen/arch/ia64/xen/fw_emul.c | 12 +++---------
1 files changed, 3 insertions(+), 9 deletions(-)

diff -r d69a57b29e3f -r 039f2ccb1e38 xen/arch/ia64/xen/fw_emul.c
--- a/xen/arch/ia64/xen/fw_emul.c Mon Jul 30 18:14:29 2007 -0600
+++ b/xen/arch/ia64/xen/fw_emul.c Tue Jul 31 10:30:40 2007 -0600
@@ -819,15 +819,9 @@ xen_pal_emulator(unsigned long index, u6
}
break;
case PAL_HALT:
- if (current->domain == dom0) {
- printk ("Domain0 halts the machine\n");
- console_start_sync();
- (*efi.reset_system)(EFI_RESET_SHUTDOWN,0,0,NULL);
- } else {
- set_bit(_VPF_down, &current->pause_flags);
- vcpu_sleep_nosync(current);
- status = PAL_STATUS_SUCCESS;
- }
+ set_bit(_VPF_down, &current->pause_flags);
+ vcpu_sleep_nosync(current);
+ status = PAL_STATUS_SUCCESS;
break;
case PAL_HALT_LIGHT:
if (VMX_DOMAIN(current)) {

_______________________________________________
Xen-changelog mailing list
Xen-changelog@lists.xensource.com
http://lists.xensource.com/xen-changelog