direct-io.hg
changeset 1394:da64afd06d32
bitkeeper revision 1.891.1.28 (40a61211zpZ9C9yOQSIb1evQ_o-mIw)
Bug fixes relating to IPIs with interrupts disabled.
Bug fixes relating to IPIs with interrupts disabled.
author | kaf24@scramble.cl.cam.ac.uk |
---|---|
date | Sat May 15 12:50:25 2004 +0000 (2004-05-15) |
parents | 769e154137df |
children | 2afbaf9592a6 |
files | xen/arch/i386/process.c xen/arch/i386/setup.c xen/common/domain.c |
line diff
1.1 --- a/xen/arch/i386/process.c Sat May 15 09:12:51 2004 +0000 1.2 +++ b/xen/arch/i386/process.c Sat May 15 12:50:25 2004 +0000 1.3 @@ -128,6 +128,9 @@ void machine_restart(char * __unused) 1.4 #ifdef CONFIG_SMP 1.5 cpuid = GET_APIC_ID(apic_read(APIC_ID)); 1.6 1.7 + /* KAF: Need interrupts enabled for safe IPI. */ 1.8 + __sti(); 1.9 + 1.10 if (reboot_smp) { 1.11 1.12 /* check to see if reboot_cpu is valid
2.1 --- a/xen/arch/i386/setup.c Sat May 15 09:12:51 2004 +0000 2.2 +++ b/xen/arch/i386/setup.c Sat May 15 12:50:25 2004 +0000 2.3 @@ -405,6 +405,8 @@ void __init start_of_day(void) 2.4 */ 2.5 #endif 2.6 2.7 + __sti(); 2.8 + 2.9 initialize_keytable(); /* call back handling for key codes */ 2.10 2.11 serial_init_stage2(); 2.12 @@ -422,8 +424,6 @@ void __init start_of_day(void) 2.13 init_xen_time(); /* initialise the time */ 2.14 schedulers_start(); /* start scheduler for each CPU */ 2.15 2.16 - sti(); 2.17 - 2.18 check_nmi_watchdog(); 2.19 2.20 #ifdef CONFIG_PCI
3.1 --- a/xen/common/domain.c Sat May 15 09:12:51 2004 +0000 3.2 +++ b/xen/common/domain.c Sat May 15 12:50:25 2004 +0000 3.3 @@ -287,7 +287,7 @@ struct pfn_info *alloc_domain_page(struc 3.4 #ifdef NO_DEVICES_IN_XEN 3.5 ASSERT(!in_irq()); 3.6 #else 3.7 - ASSERT((p != NULL) || !in_irq()); 3.8 + ASSERT((p == NULL) || !in_irq()); 3.9 #endif 3.10 3.11 spin_lock_irqsave(&free_list_lock, flags);