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

xen-devel

[Top] [All Lists]

[Xen-devel] [PATCH] fix CONFIG_CPU_HOTPLUG compile with 2.6.12 upgrade

To: Andrew Theurer <habanero@xxxxxxxxxx>
Subject: [Xen-devel] [PATCH] fix CONFIG_CPU_HOTPLUG compile with 2.6.12 upgrade
From: Ryan Harper <ryanh@xxxxxxxxxx>
Date: Thu, 7 Jul 2005 18:02:13 -0500
Cc: Paul Larson <plars@xxxxxxxxxxxxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxx, Vincent Hanquez <vincent.hanquez@xxxxxxxxxxxx>
Delivery-date: 2005年7月07日 23:01:38 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <200507071506.27529.habanero@xxxxxxxxxx>
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/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <20050707183439.GA17172@xxxxxxxxx> <200507071430.18227.habanero@xxxxxxxxxx> <1120766025.6051.58.camel@xxxxxxxxxxxxxxxxxxxxx> <200507071506.27529.habanero@xxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.5.6+20040907i
* Andrew Theurer <habanero@xxxxxxxxxx> [2005年07月07日 15:07]:
> On Thursday 07 July 2005 14:53, Paul Larson wrote:
> > On Thu, 2005年07月07日 at 14:30 -0500, Andrew Theurer wrote:
> > > CHK include/linux/version.h
> > > make[1]: `arch/i386/kernel/asm-offsets.s' is up to date.
> > > CHK include/linux/compile.h
> > > CHK usr/initramfs_list
> > > CC arch/xen/i386/kernel/process.o
> > > arch/xen/i386/kernel/process.c: In function `play_dead':
> > > arch/xen/i386/kernel/process.c:119: error: `per_cpu__cpu_state'
> > > undeclared (first use in this function)
> > > arch/xen/i386/kernel/process.c:119: error: (Each undeclared
> > > identifier is reported only once
> > > arch/xen/i386/kernel/process.c:119: error: for each function it
> > > appears in.)
> > > arch/xen/i386/kernel/process.c:119: warning: type defaults to `int'
> > > in declaration of `type name'
> > > arch/xen/i386/kernel/process.c:119: error: invalid type argument of
> > > `unary *'
> > > arch/xen/i386/kernel/process.c:125: warning: type defaults to `int'
> > > in declaration of `type name'
> > > arch/xen/i386/kernel/process.c:125: error: invalid type argument of
> > > `unary *'
> > > make[1]: *** [arch/xen/i386/kernel/process.o] Error 1
> > > make: *** [arch/xen/i386/kernel] Error 2
> >
> > I'm getting the same.
>
> For now I am disabling hotplug_cpu.
The attached patch gets CONFIG_HOTPLUG_CPU compiling again. I'll test
out the kernel tomorrow. Not sure if domU should have LOCAL_APIC and
IO_APIC enabled, they use code in mpparse.c CONFIG_X86_MPPARSE was being
enabled but the code down that patch uses isa_bus_to_virt(_x) which
requires CONFIG_XEN_PHYSDEV_ACCESS , which most domU's don't have.
-- 
Ryan Harper
Software Engineer; Linux Technology Center
IBM Corp., Austin, Tx
(512) 838-9253 T/L: 678-9253
ryanh@xxxxxxxxxx
diffstat output:
 linux-2.6.12-xen-sparse/arch/xen/Kconfig.debug | 2 -
 linux-2.6.12-xen-sparse/arch/xen/i386/Kconfig | 4 +-
 patches/linux-2.6.12/cpu_hotplug_fix.patch | 42 +++++++++++++++++++++++++
 3 files changed, 45 insertions(+), 3 deletions(-)
Signed-off-by: Ryan Harper <ryanh@xxxxxxxxxx>
---
diff -urN a/linux-2.6.12-xen-sparse/arch/xen/i386/Kconfig 
foo/linux-2.6.12-xen-sparse/arch/xen/i386/Kconfig
--- a/linux-2.6.12-xen-sparse/arch/xen/i386/Kconfig 2005年07月07日 
17:31:37.000000000 -0500
+++ foo/linux-2.6.12-xen-sparse/arch/xen/i386/Kconfig 2005年07月07日 
17:14:42.000000000 -0500
@@ -716,12 +716,12 @@
 
 config X86_LOCAL_APIC
 bool
- depends on X86_UP_APIC || ((X86_VISWS || SMP) && !X86_VOYAGER)
+ depends on XEN_PRIVILEGED_GUEST && (X86_UP_APIC || ((X86_VISWS || SMP) 
&& !X86_VOYAGER))
 default y
 
 config X86_IO_APIC
 bool
- depends on X86_UP_IOAPIC || (SMP && !(X86_VISWS || X86_VOYAGER))
+ depends on XEN_PRIVILEDGE_GUEST && (X86_UP_IOAPIC || (SMP && 
!(X86_VISWS || X86_VOYAGER)))
 default y
 
 config X86_VISWS_APIC
diff -urN a/linux-2.6.12-xen-sparse/arch/xen/Kconfig.debug 
foo/linux-2.6.12-xen-sparse/arch/xen/Kconfig.debug
--- a/linux-2.6.12-xen-sparse/arch/xen/Kconfig.debug 2005年07月07日 
17:31:37.000000000 -0500
+++ foo/linux-2.6.12-xen-sparse/arch/xen/Kconfig.debug 2005年07月07日 
16:44:53.000000000 -0500
@@ -68,7 +68,7 @@
 
 config X86_MPPARSE
 bool
- depends on X86_LOCAL_APIC && !X86_VISWS && X86
+ depends on X86_LOCAL_APIC && !X86_VISWS && X86 && XEN_PHYSDEV_ACCESS
 default y
 
 # X86_64
diff -urN a/patches/linux-2.6.12/cpu_hotplug_fix.patch 
foo/patches/linux-2.6.12/cpu_hotplug_fix.patch
--- a/patches/linux-2.6.12/cpu_hotplug_fix.patch 1969年12月31日 
18:00:00.000000000 -0600
+++ foo/patches/linux-2.6.12/cpu_hotplug_fix.patch 2005年07月07日 
17:50:24.000000000 -0500
@@ -0,0 +1,42 @@
+diff -urN pristine-linux-2.6.12.orig/include/asm-i386/cpu.h 
pristine-linux-2.6.12/include/asm-i386/cpu.h
+--- pristine-linux-2.6.12.orig/include/asm-i386/cpu.h 2005年06月17日 
14:48:29.000000000 -0500
++++ pristine-linux-2.6.12/include/asm-i386/cpu.h 2005年07月07日 
17:40:44.777157769 -0500
+@@ -5,6 +5,7 @@
+ #include <linux/cpu.h>
+ #include <linux/topology.h>
+ #include <linux/nodemask.h>
++#include <linux/percpu.h>
+ 
+ #include <asm/node.h>
+ 
+@@ -16,4 +17,5 @@
+ extern void arch_unregister_cpu(int);
+ #endif
+ 
++DECLARE_PER_CPU(int, cpu_state);
+ #endif /* _ASM_I386_CPU_H_ */
+diff -urN pristine-linux-2.6.12.orig/include/asm-i386/irq.h 
pristine-linux-2.6.12/include/asm-i386/irq.h
+--- pristine-linux-2.6.12.orig/include/asm-i386/irq.h 2005年06月17日 
14:48:29.000000000 -0500
++++ pristine-linux-2.6.12/include/asm-i386/irq.h 2005年07月07日 
17:41:08.857793011 -0500
+@@ -38,4 +38,8 @@
+ extern int irqbalance_disable(char *str);
+ #endif
+ 
++#ifdef CONFIG_HOTPLUG_CPU
++extern void fixup_irqs(cpumask_t map);
++#endif
++
+ #endif /* _ASM_IRQ_H */
+diff -urN pristine-linux-2.6.12.orig/include/asm-i386/smp.h 
pristine-linux-2.6.12/include/asm-i386/smp.h
+--- pristine-linux-2.6.12.orig/include/asm-i386/smp.h 2005年06月17日 
14:48:29.000000000 -0500
++++ pristine-linux-2.6.12/include/asm-i386/smp.h 2005年07月07日 
17:41:30.824723517 -0500
+@@ -83,6 +83,9 @@
+ }
+ 
+ #endif
++
++extern int __cpu_disable(void);
++extern void __cpu_die(unsigned int cpu);
+ #endif /* !__ASSEMBLY__ */
+ 
+ #define NO_PROC_ID 0xFF /* No processor magic marker */
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
<Prev in Thread] Current Thread [Next in Thread>
Previous by Date: [Xen-devel] [PATCH] Use hypercalls instead of accessing debug registers directly. , Arun Sharma
Next by Date: [Xen-devel] RE: [PATCH] Use hypercalls instead of accessing debug registers directly. , Ian Pratt
Previous by Thread: Re: [Xen-devel] upgrade 2.6.12 - testing wanted , Paul Larson
Next by Thread: Re: [Xen-devel] [PATCH] fix CONFIG_CPU_HOTPLUG compile with 2.6.12 upgrade , David Hopwood
Indexes: [Date] [Thread] [Top] [All Lists]

Copyright ©, Citrix Systems Inc. All rights reserved. Legal and Privacy
Citrix This site is hosted by Citrix

AltStyle によって変換されたページ (->オリジナル) /