[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] take a bite out of xen-mkbuildtree-pre



Alex Williamson wrote: [Thu May 25 2006, 01:20:48AM EDT]
>    This is definitely something we need to clean up.  A couple issues
> with the patch though; it doesn't apply cleanly on current xen-unstable
> and it drops evtchn_ia64 vs evtchn.  The latter is gone from the
> xen-ia64-unstable tree, but still exists in xen-unstable.  Otherwise, I
> like it.  Thanks,

Thanks for catching both of these problems.  Here is a new patch which
applies to xen-unstable.  This builds successfully on x86, x86_64,
ia64-vp and ia64-non-vp.

Signed-off-by: Aron Griffis <aron@xxxxxx>

# HG changeset patch
# User agriffis@xxxxxxxxxxxxxxxxx
# Node ID 86bcc332bedd3c05ad30d2b0378f532eca8f7503
# Parent  da7fe04d8e80beeda874b89f8c6e6dc80bfec4c7
Take a bite out of arch/ia64/xen-mkbuildtree-pre, which needs to go
away for inclusion of xen-ia64 in Fedora.

Converge the ia64-specific and general versions of
xen/drivers/Makefile and xen/drivers/core/Makefile.  Use Kconfig
settings instead to control whether specific pieces are built.  These
config settings might disappear when the ia64 p2m/vp conversion is
complete, but for the moment it's a clean way of handling the two
personalities of xen-ia64.

Handle evtchn/evtchn_ia64 with ifeq ($(ARCH),ia64) since this will go away with
the next pull of xen-ia64-unstable into xen-unstable, and I think this creates
less work to undo when that occurs.

diff -r da7fe04d8e80 -r 86bcc332bedd linux-2.6-xen-sparse/arch/ia64/Kconfig
--- a/linux-2.6-xen-sparse/arch/ia64/Kconfig    Thu May 25 16:00:36 2006 +0100
+++ b/linux-2.6-xen-sparse/arch/ia64/Kconfig    Thu May 25 14:24:26 2006 -0400
@@ -73,7 +73,7 @@ config XEN_IA64_DOM0_VP
 
 config XEN_IA64_DOM0_NON_VP
        bool
-       depends on !(XEN && XEN_IA64_DOM0_VP)
+       depends on XEN && !XEN_IA64_DOM0_VP
        default y
        help
          dom0 P=M model
@@ -496,15 +496,42 @@ source "security/Kconfig"
 
 source "crypto/Kconfig"
 
+#
 # override default values of drivers/xen/Kconfig
-if !XEN_IA64_DOM0_VP
+#
+if XEN
+config XEN_UTIL
+       default n if XEN_IA64_DOM0_VP
+
 config HAVE_ARCH_ALLOC_SKB
-        bool
-        default n
+       default n if !XEN_IA64_DOM0_VP
 
 config HAVE_ARCH_DEV_ALLOC_SKB
-        bool
-        default n
+       default n if !XEN_IA64_DOM0_VP
+
+config XEN_NETUTIL
+       default n if !XEN_IA64_DOM0_VP
+
+config XEN_BALLOON
+       default n if !XEN_IA64_DOM0_VP
+
+config XEN_SKBUFF
+       default n if !XEN_IA64_DOM0_VP
+
+config XEN_NETDEV_BACKEND
+       default n if !XEN_IA64_DOM0_VP
+
+config XEN_NETDEV_FRONTEND
+       default n if !XEN_IA64_DOM0_VP
+
+config XEN_CHAR
+       default n
+
+config XEN_REBOOT
+       default n
+
+config XEN_SMPBOOT
+       default n
 endif
 
 source "drivers/xen/Kconfig"
diff -r da7fe04d8e80 -r 86bcc332bedd 
linux-2.6-xen-sparse/arch/ia64/xen-mkbuildtree-pre
--- a/linux-2.6-xen-sparse/arch/ia64/xen-mkbuildtree-pre        Thu May 25 
16:00:36 2006 +0100
+++ b/linux-2.6-xen-sparse/arch/ia64/xen-mkbuildtree-pre        Thu May 25 
14:24:26 2006 -0400
@@ -9,12 +9,6 @@
 
 #eventually asm-xsi-offsets needs to be part of hypervisor.h/hypercall.h
 ln -sf ../../../../xen/include/asm-ia64/asm-xsi-offsets.h include/asm-ia64/xen/
-
-#ia64 drivers/xen isn't fully functional yet, workaround...
-#also ignore core/evtchn.c which uses a different irq mechanism than ia64
-#(warning: there be dragons here if these files diverge)
-ln -sf ../../arch/ia64/xen/drivers/Makefile drivers/xen/Makefile
-ln -sf ../../../arch/ia64/xen/drivers/coreMakefile drivers/xen/core/Makefile
 
 #not sure where these ia64-specific files will end up in the future
 ln -sf ../../../arch/ia64/xen/drivers/xenia64_init.c drivers/xen/core
diff -r da7fe04d8e80 -r 86bcc332bedd linux-2.6-xen-sparse/drivers/xen/Kconfig
--- a/linux-2.6-xen-sparse/drivers/xen/Kconfig  Thu May 25 16:00:36 2006 +0100
+++ b/linux-2.6-xen-sparse/drivers/xen/Kconfig  Thu May 25 14:24:26 2006 -0400
@@ -228,4 +228,34 @@ config NO_IDLE_HZ
        bool
        default y
 
+config XEN_UTIL
+       bool
+       default y
+
+config XEN_NETUTIL
+       bool
+       default y
+
+config XEN_BALLOON
+       bool
+       default y
+
+config XEN_CHAR
+       bool
+       default y
+
+config XEN_SKBUFF
+       bool
+       default y
+       depends on NET
+
+config XEN_REBOOT
+       bool
+       default y
+
+config XEN_SMPBOOT
+       bool
+       default y
+       depends on SMP
+
 endif
diff -r da7fe04d8e80 -r 86bcc332bedd linux-2.6-xen-sparse/drivers/xen/Makefile
--- a/linux-2.6-xen-sparse/drivers/xen/Makefile Thu May 25 16:00:36 2006 +0100
+++ b/linux-2.6-xen-sparse/drivers/xen/Makefile Thu May 25 14:24:26 2006 -0400
@@ -1,15 +1,13 @@
-
-obj-y  += net_driver_util.o
-obj-y  += util.o
-
 obj-y  += core/
-obj-y  += char/
 obj-y  += console/
 obj-y  += evtchn/
-obj-y  += balloon/
 obj-y  += privcmd/
 obj-y  += xenbus/
 
+obj-$(CONFIG_XEN_UTIL)                 += util.o
+obj-$(CONFIG_XEN_NETUTIL)              += net_driver_util.o
+obj-$(CONFIG_XEN_BALLOON)              += balloon/
+obj-$(CONFIG_XEN_CHAR)                 += char/
 obj-$(CONFIG_XEN_BLKDEV_BACKEND)       += blkback/
 obj-$(CONFIG_XEN_NETDEV_BACKEND)       += netback/
 obj-$(CONFIG_XEN_TPMDEV_BACKEND)       += tpmback/
diff -r da7fe04d8e80 -r 86bcc332bedd 
linux-2.6-xen-sparse/drivers/xen/core/Makefile
--- a/linux-2.6-xen-sparse/drivers/xen/core/Makefile    Thu May 25 16:00:36 
2006 +0100
+++ b/linux-2.6-xen-sparse/drivers/xen/core/Makefile    Thu May 25 14:24:26 
2006 -0400
@@ -2,11 +2,21 @@
 # Makefile for the linux kernel.
 #
 
-obj-y   := evtchn.o reboot.o gnttab.o features.o
+obj-y   := gnttab.o features.o
 
-obj-$(CONFIG_PROC_FS)     += xen_proc.o
-obj-$(CONFIG_NET)         += skbuff.o
-obj-$(CONFIG_SMP)         += smpboot.o
-obj-$(CONFIG_HOTPLUG_CPU) += cpu_hotplug.o
-obj-$(CONFIG_SYSFS)       += hypervisor_sysfs.o
-obj-$(CONFIG_XEN_SYSFS)   += xen_sysfs.o
+obj-$(CONFIG_PROC_FS)  += xen_proc.o
+obj-$(CONFIG_SYSFS)    += hypervisor_sysfs.o
+obj-$(CONFIG_HOTPLUG_CPU)      += cpu_hotplug.o
+obj-$(CONFIG_XEN_SYSFS)        += xen_sysfs.o
+obj-$(CONFIG_IA64)     += xenia64_init.o
+obj-$(CONFIG_XEN_SKBUFF)       += skbuff.o
+obj-$(CONFIG_XEN_REBOOT)       += reboot.o
+obj-$(CONFIG_XEN_SMPBOOT)      += smpboot.o
+
+# This special handling should go away with the next pull of xen-ia64-unstable
+# into xen-unstable
+ifeq ($(ARCH),ia64)
+obj-y  += evtchn_ia64.o
+else
+obj-y  += evtchn.o
+endif

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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.