ia64/xen-unstable

changeset 15666:039f2ccb1e38

[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>
author Alex Williamson <alex.williamson@hp.com>
date Tue Jul 31 10:30:40 2007 -0600 (2007-07-31)
parents d69a57b29e3f
children 77c87416fbd0
files xen/arch/ia64/xen/fw_emul.c
line diff
     1.1 --- a/xen/arch/ia64/xen/fw_emul.c	Mon Jul 30 18:14:29 2007 -0600
     1.2 +++ b/xen/arch/ia64/xen/fw_emul.c	Tue Jul 31 10:30:40 2007 -0600
     1.3 @@ -819,15 +819,9 @@ xen_pal_emulator(unsigned long index, u6
     1.4  	        }
     1.5  		break;
     1.6  	    case PAL_HALT:
     1.7 -		if (current->domain == dom0) {
     1.8 -			printk ("Domain0 halts the machine\n");
     1.9 -			console_start_sync();
    1.10 -			(*efi.reset_system)(EFI_RESET_SHUTDOWN,0,0,NULL);
    1.11 -		} else {
    1.12 -			set_bit(_VPF_down, &current->pause_flags);
    1.13 -			vcpu_sleep_nosync(current);
    1.14 -			status = PAL_STATUS_SUCCESS;
    1.15 -		}
    1.16 +		set_bit(_VPF_down, &current->pause_flags);
    1.17 +		vcpu_sleep_nosync(current);
    1.18 +		status = PAL_STATUS_SUCCESS;
    1.19  		break;
    1.20  	    case PAL_HALT_LIGHT:
    1.21  		if (VMX_DOMAIN(current)) {