WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] [xen-unstable] x86: enable interrupts explicitly in __st

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] x86: enable interrupts explicitly in __start_xen()
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Tue, 16 Dec 2008 22:30:51 -0800
Delivery-date: Tue, 16 Dec 2008 22:32:04 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1229001928 0
# Node ID df32584505c21c4d9a39991785773e667adffb18
# Parent  1391e1a444c2e986322d72258c0e92eaa2268168
x86: enable interrupts explicitly in __start_xen()

Instead of relying on smp_prepare_cpus() (via check_nmi_watchdog()) or
init_xen_time() (via init_platform_timer() -> plt_overflow())
implicitly enabling interrupts, enable them explicitly once safe to do
so (it may actually be possible to move this even further up, but I
don't think that would buy us much).

Signed-off-by: Jan Beulich <jbeulich@xxxxxxxxxx>

Also move spin_debug_enable() a bit higer. Moving it above
smp_prepare_cpus() didn't work for some reason though!

Signed-off-by: Keir Fraser <keir.fraser@xxxxxxxxxx>
---
 xen/arch/x86/setup.c |    8 +++++---
 1 files changed, 5 insertions(+), 3 deletions(-)

diff -r 1391e1a444c2 -r df32584505c2 xen/arch/x86/setup.c
--- a/xen/arch/x86/setup.c      Thu Dec 11 13:10:19 2008 +0000
+++ b/xen/arch/x86/setup.c      Thu Dec 11 13:25:28 2008 +0000
@@ -941,6 +941,9 @@ void __init __start_xen(unsigned long mb
         set_in_cr4(X86_CR4_OSFXSR);
     if ( cpu_has_xmm )
         set_in_cr4(X86_CR4_OSXMMEXCPT);
+
+    local_irq_enable();
+
 #ifdef CONFIG_X86_64
     vesa_mtrr_init();
 #endif
@@ -949,6 +952,8 @@ void __init __start_xen(unsigned long mb
         max_cpus = 0;
 
     smp_prepare_cpus(max_cpus);
+
+    spin_debug_enable();
 
     /*
      * Initialise higher-level timer functions. We do this fairly late
@@ -961,9 +966,6 @@ void __init __start_xen(unsigned long mb
     initialize_keytable();
 
     serial_init_postirq();
-
-    BUG_ON(!local_irq_is_enabled());
-    spin_debug_enable();
 
     for_each_present_cpu ( i )
     {

_______________________________________________
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] x86: enable interrupts explicitly in __start_xen(), Xen patchbot-unstable <=