66 lines
2.2 KiB
Diff
66 lines
2.2 KiB
Diff
|
# HG changeset patch
|
||
|
# User Keir Fraser <keir.fraser@citrix.com>
|
||
|
# 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 <carnold@novell.com>.
|
||
|
|
||
|
Signed-off-by: Jan Beulich <jbeulich@novell.com>
|
||
|
|
||
|
--- 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)
|