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: adjust x2apic section placement

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] x86: adjust x2apic section placement
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Thu, 23 Dec 2010 05:34:38 -0800
Delivery-date: Thu, 23 Dec 2010 05:43:19 -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@xxxxxxx>
# Date 1292414274 0
# Node ID 9e33a83b36df055f0b40c638e8823564f7f719b9
# Parent  fcc91cb3efcb83823b7e9c74ee3c97c4a9c0b7d5
x86: adjust x2apic section placement

Signed-off-by: Jan Beulich <jbeulich@xxxxxxxxxx>
---
 xen/arch/x86/apic.c           |   15 +++++++--------
 xen/arch/x86/genapic/x2apic.c |    4 ++--
 xen/arch/x86/setup.c          |    2 +-
 xen/arch/x86/smpboot.c        |    2 +-
 xen/include/asm-x86/apic.h    |    3 ++-
 5 files changed, 13 insertions(+), 13 deletions(-)

diff -r fcc91cb3efcb -r 9e33a83b36df xen/arch/x86/apic.c
--- a/xen/arch/x86/apic.c       Wed Dec 15 11:56:25 2010 +0000
+++ b/xen/arch/x86/apic.c       Wed Dec 15 11:57:54 2010 +0000
@@ -948,17 +948,16 @@ no_apic:
     return -1;
 }
 
-void x2apic_setup(void)
+void x2apic_ap_setup(void)
+{
+    if ( x2apic_enabled )
+        __enable_x2apic();
+}
+
+void __init x2apic_bsp_setup(void)
 {
     struct IO_APIC_route_entry **ioapic_entries = NULL;
     uint64_t msr_content;
-
-    if ( smp_processor_id() != 0 )
-    {
-        if ( x2apic_enabled )
-            __enable_x2apic();
-        return;
-    }
 
     if ( !cpu_has_x2apic )
         return;
diff -r fcc91cb3efcb -r 9e33a83b36df xen/arch/x86/genapic/x2apic.c
--- a/xen/arch/x86/genapic/x2apic.c     Wed Dec 15 11:56:25 2010 +0000
+++ b/xen/arch/x86/genapic/x2apic.c     Wed Dec 15 11:57:54 2010 +0000
@@ -27,7 +27,7 @@
 #include <xen/smp.h>
 #include <asm/mach-default/mach_mpparse.h>
 
-static int x2apic_phys; /* By default we use logical cluster mode. */
+static int __initdata x2apic_phys; /* By default we use logical cluster mode. 
*/
 boolean_param("x2apic_phys", x2apic_phys);
 
 static void init_apic_ldr_x2apic_phys(void)
@@ -134,7 +134,7 @@ static const struct genapic apic_x2apic_
     .send_IPI_self = send_IPI_self_x2apic
 };
 
-const struct genapic *apic_x2apic_probe(void)
+const struct genapic *__init apic_x2apic_probe(void)
 {
     return x2apic_phys ? &apic_x2apic_phys : &apic_x2apic_cluster;
 }
diff -r fcc91cb3efcb -r 9e33a83b36df xen/arch/x86/setup.c
--- a/xen/arch/x86/setup.c      Wed Dec 15 11:56:25 2010 +0000
+++ b/xen/arch/x86/setup.c      Wed Dec 15 11:57:54 2010 +0000
@@ -1190,7 +1190,7 @@ void __init __start_xen(unsigned long mb
 
     init_cpu_to_node();
 
-    x2apic_setup();
+    x2apic_bsp_setup();
 
     init_IRQ();
 
diff -r fcc91cb3efcb -r 9e33a83b36df xen/arch/x86/smpboot.c
--- a/xen/arch/x86/smpboot.c    Wed Dec 15 11:56:25 2010 +0000
+++ b/xen/arch/x86/smpboot.c    Wed Dec 15 11:57:54 2010 +0000
@@ -195,7 +195,7 @@ void smp_callin(void)
      * update until we finish. We are free to set up this CPU: first the APIC.
      */
     Dprintk("CALLIN, before setup_local_APIC().\n");
-    x2apic_setup();
+    x2apic_ap_setup();
     setup_local_APIC();
     map_cpu_to_logical_apicid();
 
diff -r fcc91cb3efcb -r 9e33a83b36df xen/include/asm-x86/apic.h
--- a/xen/include/asm-x86/apic.h        Wed Dec 15 11:56:25 2010 +0000
+++ b/xen/include/asm-x86/apic.h        Wed Dec 15 11:57:54 2010 +0000
@@ -25,7 +25,8 @@ extern int x2apic_enabled;
 extern int x2apic_enabled;
 extern int directed_eoi_enabled;
 
-void x2apic_setup(void);
+void x2apic_bsp_setup(void);
+void x2apic_ap_setup(void);
 const struct genapic *apic_x2apic_probe(void);
 
 /*

_______________________________________________
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: adjust x2apic section placement, Xen patchbot-unstable <=