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-devel

[Xen-devel] [PATCH] x86: propagate disabled APIC state to Dom0

To: <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] [PATCH] x86: propagate disabled APIC state to Dom0
From: "Jan Beulich" <jbeulich@xxxxxxxxxx>
Date: Wed, 14 Jan 2009 10:19:16 +0000
Delivery-date: Wed, 14 Jan 2009 02:19:03 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
This in particular eliminates the need to specify "noapic" to Dom0 when
"noapic" is passed to Xen, provided the kernel side gets slightly
modified to make use of this information (Linux side patch cannot
easily be provided for the 2.6.18 tree, but this is being used by our
2.6.27-based one).

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

--- 2009-01-08.orig/xen/arch/x86/traps.c        2009-01-08 10:56:55.000000000 
+0100
+++ 2009-01-08/xen/arch/x86/traps.c     2009-01-09 09:42:42.000000000 +0100
@@ -723,6 +723,8 @@ static void pv_cpuid(struct cpu_user_reg
     {
         /* Modify Feature Information. */
         __clear_bit(X86_FEATURE_VME, &d);
+        if ( !cpu_has_apic )
+            __clear_bit(X86_FEATURE_APIC, &d);
         if ( !opt_allow_hugepage )
             __clear_bit(X86_FEATURE_PSE, &d);
         __clear_bit(X86_FEATURE_PGE, &d);
@@ -755,6 +757,8 @@ static void pv_cpuid(struct cpu_user_reg
         __clear_bit(X86_FEATURE_XTPR % 32, &c);
         __clear_bit(X86_FEATURE_PDCM % 32, &c);
         __clear_bit(X86_FEATURE_DCA % 32, &c);
+        if ( !cpu_has_apic )
+           __clear_bit(X86_FEATURE_X2APIC % 32, &c);
         __set_bit(X86_FEATURE_HYPERVISOR % 32, &c);
         break;
     case 0x80000001:
@@ -773,6 +777,8 @@ static void pv_cpuid(struct cpu_user_reg
         __clear_bit(X86_FEATURE_RDTSCP % 32, &d);
 
         __clear_bit(X86_FEATURE_SVME % 32, &c);
+        if ( !cpu_has_apic )
+           __clear_bit(X86_FEATURE_EXTAPICSPACE % 32, &c);
         __clear_bit(X86_FEATURE_OSVW % 32, &c);
         __clear_bit(X86_FEATURE_IBS % 32, &c);
         __clear_bit(X86_FEATURE_SKINIT % 32, &c);




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

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-devel] [PATCH] x86: propagate disabled APIC state to Dom0, Jan Beulich <=