# HG changeset patch # User Keir Fraser # Date 1227525080 0 # Node ID 0b8c6c91c5a408345e6ed650fb9f19e4fa9809b9 # Parent cd45b5c9561250b999476227dbc7f7ede377d3d4 pv-on-hvm drivers: build fixes for Linux 2.6.27+ Make the drivers build properly in a 2.6.27 environment as well as against a kernel with pv-ops Xen configured on (in the latter case more work would be needed to also make the drivers work, as there's a large number of duplicate exports). Portions from Charles Arnold . Signed-off-by: Jan Beulich --- a/unmodified_drivers/linux-2.6/balloon/Kbuild +++ b/unmodified_drivers/linux-2.6/balloon/Kbuild @@ -4,6 +4,5 @@ obj-m = xen-balloon.o EXTRA_CFLAGS += -I$(M)/platform-pci -xen-balloon-objs = -xen-balloon-objs += balloon.o -xen-balloon-objs += sysfs.o +xen-balloon-y := balloon.o sysfs.o +xen-balloon-$(CONFIG_XEN_SCRUB_PAGES) += scrub.o --- a/unmodified_drivers/linux-2.6/mkbuildtree +++ b/unmodified_drivers/linux-2.6/mkbuildtree @@ -53,6 +53,7 @@ i[34567]86|x86_64) ln -sf ${XL}/include/asm-x86/mach-xen/asm/synch_bitops*.h include/asm ln -sf ${XL}/include/asm-x86/mach-xen/asm/maddr*.h include/asm ln -sf ${XL}/include/asm-x86/mach-xen/asm/gnttab_dma.h include/asm + ln -sf ${XL}/arch/x86/lib/scrub.c balloon else if [ $uname = x86_64 ]; then mkdir -p include/asm-i386 --- a/unmodified_drivers/linux-2.6/platform-pci/machine_reboot.c +++ b/unmodified_drivers/linux-2.6/platform-pci/machine_reboot.c @@ -34,7 +34,11 @@ static void ap_suspend(void *_info) atomic_dec(&info->nr_spinning); } +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,27) #define initiate_ap_suspend(i) smp_call_function(ap_suspend, i, 0, 0) +#else +#define initiate_ap_suspend(i) smp_call_function(ap_suspend, i, 0) +#endif #else /* !defined(CONFIG_SMP) */ --- a/unmodified_drivers/linux-2.6/platform-pci/platform-compat.c +++ b/unmodified_drivers/linux-2.6/platform-pci/platform-compat.c @@ -14,7 +14,11 @@ EXPORT_SYMBOL(system_state); void ctrl_alt_del(void) { +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,27) kill_proc(1, SIGINT, 1); /* interrupt init */ +#else + kill_cad_pid(SIGINT, 1); +#endif } #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,8)