From 61653f64416a4d6dd8414b222ca5697e74406de9484953f548ec1e950d414af8 Mon Sep 17 00:00:00 2001 From: Olaf Hering Date: Mon, 8 Oct 2012 12:28:21 +0000 Subject: [PATCH] - backport parallel build support for stubdom - rename 5 patches which were merged upstream OBS-URL: https://build.opensuse.org/package/show/Virtualization/xen?expand=0&rev=207 --- ...cing_bash_-x_from_network-nat_script.patch | 21 ++ ....init_remove_4_from_default_runlevel.patch | 31 +++ ...csi_fix_passing_of_SCSI_control_LUNs.patch | 19 +- ...istant_device_names_for_SCSI_devices.patch | 28 ++- ...si_update_sysfs_parser_for_Linux_3.0.patch | 21 +- ...rallel_build_by_expanding_CROSS_MAKE.patch | 224 ++++++++++++++++++ network-nat.patch | 10 - xen.changes | 6 + xen.no-default-runlevel-4.patch | 21 -- xen.spec | 24 +- 10 files changed, 337 insertions(+), 68 deletions(-) create mode 100644 26006-hotplug-Linux_Remove_tracing_bash_-x_from_network-nat_script.patch create mode 100644 26007-xenballoond.init_remove_4_from_default_runlevel.patch rename xen-bug776995-pvscsi-no-devname.patch => 26008-xend-pvscsi_fix_passing_of_SCSI_control_LUNs.patch (70%) rename xen-bug776995-pvscsi-persistent-names.patch => 26009-xend-pvscsi_fix_usage_of_persistant_device_names_for_SCSI_devices.patch (55%) rename xen-bug776995-pvscsi-sysfs-parser.patch => 26010-xend-pvscsi_update_sysfs_parser_for_Linux_3.0.patch (85%) create mode 100644 26011-stubdom_fix_parallel_build_by_expanding_CROSS_MAKE.patch delete mode 100644 network-nat.patch delete mode 100644 xen.no-default-runlevel-4.patch diff --git a/26006-hotplug-Linux_Remove_tracing_bash_-x_from_network-nat_script.patch b/26006-hotplug-Linux_Remove_tracing_bash_-x_from_network-nat_script.patch new file mode 100644 index 0000000..115523a --- /dev/null +++ b/26006-hotplug-Linux_Remove_tracing_bash_-x_from_network-nat_script.patch @@ -0,0 +1,21 @@ +changeset: 26006:8b6870d686d6 +user: Olaf Hering +date: Mon Oct 08 12:18:30 2012 +0100 +files: tools/hotplug/Linux/network-nat +description: +hotplug/Linux: Remove tracing (bash -x) from network-nat script + +Signed-off-by: Olaf Hering +Acked-by: Ian Campbell +Committed-by: Ian Campbell + + +diff -r cdb48f1742f3 -r 8b6870d686d6 tools/hotplug/Linux/network-nat +--- a/tools/hotplug/Linux/network-nat Mon Oct 08 12:18:29 2012 +0100 ++++ b/tools/hotplug/Linux/network-nat Mon Oct 08 12:18:30 2012 +0100 +@@ -1,4 +1,4 @@ +-#!/bin/bash -x ++#!/bin/bash + #============================================================================ + # Default Xen network start/stop script when using NAT. + # Xend calls a network script when it starts. diff --git a/26007-xenballoond.init_remove_4_from_default_runlevel.patch b/26007-xenballoond.init_remove_4_from_default_runlevel.patch new file mode 100644 index 0000000..76b621c --- /dev/null +++ b/26007-xenballoond.init_remove_4_from_default_runlevel.patch @@ -0,0 +1,31 @@ +changeset: 26007:fe756682cc7f +user: Olaf Hering +date: Mon Oct 08 12:18:31 2012 +0100 +files: tools/xenballoon/xenballoond.init +description: +xenballoond.init: remove 4 from default runlevel + +Remove 4 from default runlevel in xenballoond.init. + +Similar to what changeset 24847:0900b1c905f1 does in xencommons, remove +runlevel 4 from the other runlevel scripts. LSB defines runlevel 4 as +reserved for local use, the local sysadmin is responsible for symlink +creation in rc4.d. + +Signed-off-by: Olaf Hering +Acked-by: Ian Campbell +Committed-by: Ian Campbell + + +diff -r 8b6870d686d6 -r fe756682cc7f tools/xenballoon/xenballoond.init +--- a/tools/xenballoon/xenballoond.init Mon Oct 08 12:18:30 2012 +0100 ++++ b/tools/xenballoon/xenballoond.init Mon Oct 08 12:18:31 2012 +0100 +@@ -14,7 +14,7 @@ + # Should-Start: + # Required-Stop: $syslog $remote_fs + # Should-Stop: +-# Default-Start: 3 4 5 ++# Default-Start: 3 5 + # Default-Stop: 0 1 2 6 + # Short-Description: Start/stop xenballoond + # Description: Starts and stops the Xen ballooning daemon. diff --git a/xen-bug776995-pvscsi-no-devname.patch b/26008-xend-pvscsi_fix_passing_of_SCSI_control_LUNs.patch similarity index 70% rename from xen-bug776995-pvscsi-no-devname.patch rename to 26008-xend-pvscsi_fix_passing_of_SCSI_control_LUNs.patch index c5cf27f..8e884b3 100644 --- a/xen-bug776995-pvscsi-no-devname.patch +++ b/26008-xend-pvscsi_fix_passing_of_SCSI_control_LUNs.patch @@ -1,3 +1,8 @@ +changeset: 26008:eecb528583d7 +user: Olaf Hering +date: Mon Oct 08 12:18:31 2012 +0100 +files: tools/python/xen/util/vscsi_util.py +description: xend/pvscsi: fix passing of SCSI control LUNs Currently pvscsi can not pass SCSI devices that have just a scsi_generic node. @@ -17,14 +22,14 @@ carron:~ $ lsscsi -g [4:0:3:0] storage HP HSV400 0950 - /dev/sg5 [4:0:3:1] disk HP HSV400 0950 /dev/sde /dev/sg6 ---- - tools/python/xen/util/vscsi_util.py | 2 ++ - 1 file changed, 2 insertions(+) +Signed-off-by: Olaf Hering +Acked-by: Ian Campbell +Committed-by: Ian Campbell -Index: xen-4.1.2-testing/tools/python/xen/util/vscsi_util.py -=================================================================== ---- xen-4.1.2-testing.orig/tools/python/xen/util/vscsi_util.py -+++ xen-4.1.2-testing/tools/python/xen/util/vscsi_util.py + +diff -r fe756682cc7f -r eecb528583d7 tools/python/xen/util/vscsi_util.py +--- a/tools/python/xen/util/vscsi_util.py Mon Oct 08 12:18:31 2012 +0100 ++++ b/tools/python/xen/util/vscsi_util.py Mon Oct 08 12:18:31 2012 +0100 @@ -105,6 +105,8 @@ def _vscsi_get_scsidevices_by_lsscsi(opt devname = None try: diff --git a/xen-bug776995-pvscsi-persistent-names.patch b/26009-xend-pvscsi_fix_usage_of_persistant_device_names_for_SCSI_devices.patch similarity index 55% rename from xen-bug776995-pvscsi-persistent-names.patch rename to 26009-xend-pvscsi_fix_usage_of_persistant_device_names_for_SCSI_devices.patch index efe3b33..b0b8a51 100644 --- a/xen-bug776995-pvscsi-persistent-names.patch +++ b/26009-xend-pvscsi_fix_usage_of_persistant_device_names_for_SCSI_devices.patch @@ -1,3 +1,8 @@ +changeset: 26009:2dbfa4d2e107 +user: Olaf Hering +date: Mon Oct 08 12:18:32 2012 +0100 +files: tools/python/xen/util/vscsi_util.py +description: xend/pvscsi: fix usage of persistant device names for SCSI devices Currently the callers of vscsi_get_scsidevices() do not pass a mask @@ -9,17 +14,20 @@ not found. Using a mask '*' if no mask was given will call lsscsi correctly and the following config is parsed correctly: -vscsi=['/dev/sg3,0:0:0:0','/dev/disk/by-id/wwn-0x600508b4000cf1c30000800000410000,0:0:0:1'] +vscsi=[ + '/dev/sg3, 0:0:0:0', + '/dev/disk/by-id/wwn-0x600508b4000cf1c30000800000410000, 0:0:0:1' +] ---- - tools/python/xen/util/vscsi_util.py | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) +Signed-off-by: Olaf Hering +Acked-by: Ian Campbell +Committed-by: Ian Campbell -Index: xen-4.2.0-testing/tools/python/xen/util/vscsi_util.py -=================================================================== ---- xen-4.2.0-testing.orig/tools/python/xen/util/vscsi_util.py -+++ xen-4.2.0-testing/tools/python/xen/util/vscsi_util.py -@@ -148,7 +148,7 @@ def _vscsi_get_scsidevices_by_sysfs(): + +diff -r eecb528583d7 -r 2dbfa4d2e107 tools/python/xen/util/vscsi_util.py +--- a/tools/python/xen/util/vscsi_util.py Mon Oct 08 12:18:31 2012 +0100 ++++ b/tools/python/xen/util/vscsi_util.py Mon Oct 08 12:18:32 2012 +0100 +@@ -150,7 +150,7 @@ def _vscsi_get_scsidevices_by_sysfs(): return devices @@ -28,7 +36,7 @@ Index: xen-4.2.0-testing/tools/python/xen/util/vscsi_util.py """ get all scsi devices information """ devices = _vscsi_get_scsidevices_by_lsscsi("[%s]" % mask) -@@ -277,7 +277,7 @@ def get_scsi_device(pHCTL): +@@ -279,7 +279,7 @@ def get_scsi_device(pHCTL): return _make_scsi_record(scsi_info) return None diff --git a/xen-bug776995-pvscsi-sysfs-parser.patch b/26010-xend-pvscsi_update_sysfs_parser_for_Linux_3.0.patch similarity index 85% rename from xen-bug776995-pvscsi-sysfs-parser.patch rename to 26010-xend-pvscsi_update_sysfs_parser_for_Linux_3.0.patch index 503266a..8ac4587 100644 --- a/xen-bug776995-pvscsi-sysfs-parser.patch +++ b/26010-xend-pvscsi_update_sysfs_parser_for_Linux_3.0.patch @@ -1,3 +1,8 @@ +changeset: 26010:cff10030c6ea +user: Olaf Hering +date: Mon Oct 08 12:18:33 2012 +0100 +files: tools/python/xen/util/vscsi_util.py +description: xend/pvscsi: update sysfs parser for Linux 3.0 The sysfs parser for /sys/bus/scsi/devices understands only the layout @@ -10,7 +15,6 @@ Both directories contain a 'dev' file with the major:minor information. This patch updates the used regex strings to match also the colon to make it more robust against possible future changes. - In kernel version 3.0 the layout changed: /sys/bus/scsi/devices/ contains now additional symlinks to directories such as host1 and target1:0:0. This patch ignores these as they do not @@ -26,17 +30,16 @@ Both directories contain a 'dev' file with the major:minor information. This patch adds additional code to walk the subdir to find the 'dev' file to make sure the given subdirectory is really the kernel name. - In addition this patch makes sure devname is not None. ---- - tools/python/xen/util/vscsi_util.py | 26 +++++++++++++++++++++----- - 1 file changed, 21 insertions(+), 5 deletions(-) +Signed-off-by: Olaf Hering +Acked-by: Ian Campbell +Committed-by: Ian Campbell -Index: xen-4.1.2-testing/tools/python/xen/util/vscsi_util.py -=================================================================== ---- xen-4.1.2-testing.orig/tools/python/xen/util/vscsi_util.py -+++ xen-4.1.2-testing/tools/python/xen/util/vscsi_util.py + +diff -r 2dbfa4d2e107 -r cff10030c6ea tools/python/xen/util/vscsi_util.py +--- a/tools/python/xen/util/vscsi_util.py Mon Oct 08 12:18:32 2012 +0100 ++++ b/tools/python/xen/util/vscsi_util.py Mon Oct 08 12:18:33 2012 +0100 @@ -130,20 +130,36 @@ def _vscsi_get_scsidevices_by_sysfs(): for dirpath, dirnames, files in os.walk(sysfs_mnt + SYSFS_SCSI_PATH): diff --git a/26011-stubdom_fix_parallel_build_by_expanding_CROSS_MAKE.patch b/26011-stubdom_fix_parallel_build_by_expanding_CROSS_MAKE.patch new file mode 100644 index 0000000..df8b7a9 --- /dev/null +++ b/26011-stubdom_fix_parallel_build_by_expanding_CROSS_MAKE.patch @@ -0,0 +1,224 @@ +changeset: 26011:b6fb4e63b946 +user: Olaf Hering +date: Mon Oct 08 12:18:34 2012 +0100 +files: stubdom/Makefile +description: +stubdom: fix parallel build by expanding CROSS_MAKE + +Recently I changed my rpm xen.spec file from doing +'make -C tools -j N && make stubdom' to 'make -j N stubdom' because +stubdom depends on tools, so both get built. +The result was the failure below. + +.... +mkdir -p grub-x86_64 +CPPFLAGS="-isystem /home/abuild/rpmbuild/BUILD/xen-4.2.25602/non-dbg/stubdom/../extras/mini-os/include -D__MINIOS__ -DHAVE_LIBC -isystem /home/abuild/rpmbuild/BUILD/xen-4.2.25602/non-dbg/stubdom/../extras/mini-os/include/posix -isystem /home/abuild/rpmbuild/BUILD/xen-4.2.25602/non-dbg/stubdom/../tools/xenstore -isystem /home/abuild/rpmbuild/BUILD/xen-4.2.25602/non-dbg/stubdom/../extras/mini-os/include/x86 -isystem /home/abuild/rpmbuild/BUILD/xen-4.2.25602/non-dbg/stubdom/../extras/mini-os/include/x86/x86_64 -U __linux__ -U __FreeBSD__ -U __sun__ -nostdinc -isystem /home/abuild/rpmbuild/BUILD/xen-4.2.25602/non-dbg/stubdom/../extras/mini-os/include/posix -isystem /home/abuild/rpmbuild/BUILD/xen-4.2.25602/non-dbg/stubdom/cross-root-x86_64/x86_64-xen-elf/include -isystem /usr/lib64/gcc/x86_64-suse-linux/4.7/include -isystem /home/abuild/rpmbuild/BUILD/xen-4.2.25602/non-dbg/stubdom/lwip-x86_64/src/include -isystem /home/abuild/rpmbuild/BUILD/xen-4.2.25602/non-dbg/stubdom/lwip-x86_64/src/include/ipv4 -I/home/abuild/rpmbuild/BUILD/xen-4.2.25602/non-dbg/stubdom/include -I/home/abuild/rpmbuild/BUILD/xen-4.2.25602/non-dbg/stubdom/../xen/include" CFLAGS="-mno-red-zone -O1 -fno-omit-frame-pointer -m64 -mno-red-zone -fno-reorder-blocks -fno-asynchronous-unwind-tables -m64 -g -fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes -Wdeclaration-after-statement -Wno-unused-but-set-variable -fno-stack-protector -fno-exceptions" make DESTDIR= -C grub OBJ_DIR=/home/abuild/rpmbuild/BUILD/xen-4.2.25602/non-dbg/stubdom/grub-x86_64 +make[2]: Entering directory `/home/abuild/rpmbuild/BUILD/xen-4.2.25602/non-dbg/stubdom/grub' +make[2]: warning: jobserver unavailable: using -j1. Add `+' to parent make rule. +make[2]: *** INTERNAL: readdir: Bad file descriptor +. Stop. +make[2]: Makefile: Field 'stem' not cached: Makefile + +make[2]: Leaving directory `/home/abuild/rpmbuild/BUILD/xen-4.2.25602/non-dbg/stubdom/grub' +make[1]: *** [grub] Error 2 +[ -d mini-os-x86_64-xenstore ] || \ +for i in $(cd /home/abuild/rpmbuild/BUILD/xen-4.2.25602/non-dbg/stubdom/../extras/mini-os ; find . -type d) ; do \ + mkdir -p mini-os-x86_64-xenstore/$i ; \ +done +.... + +Expanding every occurrence of CROSS_MAKE avoids this error. It also has +the nice side effect of actually enabling parallel build for stubdom. +According to the GNU make documentation $(MAKE) gets its special meaning +only if it appears directly in the recipe: + +http://www.gnu.org/software/make/manual/html_node/MAKE-Variable.html + +Signed-off-by: Olaf Hering +Acked-by: Ian Campbell +Committed-by: Ian Campbell + + +diff -r cff10030c6ea -r b6fb4e63b946 stubdom/Makefile +--- a/stubdom/Makefile Mon Oct 08 12:18:33 2012 +0100 ++++ b/stubdom/Makefile Mon Oct 08 12:18:34 2012 +0100 +@@ -76,8 +76,6 @@ TARGET_LDFLAGS += -nostdlib -L$(CROSS_PR + + TARGETS=ioemu c caml grub xenstore + +-CROSS_MAKE := $(MAKE) DESTDIR= +- + .PHONY: all + all: build + ifeq ($(STUBDOM_SUPPORTED),1) +@@ -113,8 +111,8 @@ cross-newlib: $(NEWLIB_STAMPFILE) + mkdir -p newlib-$(XEN_TARGET_ARCH) + ( cd newlib-$(XEN_TARGET_ARCH) && \ + CC_FOR_TARGET="$(CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(NEWLIB_CFLAGS)" AR_FOR_TARGET=$(AR) LD_FOR_TARGET=$(LD) RANLIB_FOR_TARGET=$(RANLIB) ../newlib-$(NEWLIB_VERSION)/configure --prefix=$(CROSS_PREFIX) --verbose --target=$(GNU_TARGET_ARCH)-xen-elf --enable-newlib-io-long-long --disable-multilib && \ +- $(CROSS_MAKE) && \ +- $(CROSS_MAKE) install ) ++ $(MAKE) DESTDIR= && \ ++ $(MAKE) DESTDIR= install ) + + ############ + # Cross-zlib +@@ -133,8 +131,8 @@ cross-zlib: $(ZLIB_STAMPFILE) + $(ZLIB_STAMPFILE): zlib-$(XEN_TARGET_ARCH) $(NEWLIB_STAMPFILE) + ( cd $< && \ + CFLAGS="$(TARGET_CPPFLAGS) $(TARGET_CFLAGS)" CC=$(CC) ./configure --prefix=$(CROSS_PREFIX)/$(GNU_TARGET_ARCH)-xen-elf && \ +- $(CROSS_MAKE) libz.a && \ +- $(CROSS_MAKE) install ) ++ $(MAKE) DESTDIR= libz.a && \ ++ $(MAKE) DESTDIR= install ) + + ############## + # Cross-libpci +@@ -158,7 +156,7 @@ cross-libpci: $(LIBPCI_STAMPFILE) + chmod u+w lib/config.h && \ + echo '#define PCILIB_VERSION "$(LIBPCI_VERSION)"' >> lib/config.h && \ + ln -sf ../../libpci.config.mak lib/config.mk && \ +- $(CROSS_MAKE) CC="$(CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) -I$(call realpath,$(MINI_OS)/include)" lib/libpci.a && \ ++ $(MAKE) DESTDIR= CC="$(CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) -I$(call realpath,$(MINI_OS)/include)" lib/libpci.a && \ + $(INSTALL_DATA) lib/libpci.a $(CROSS_PREFIX)/$(GNU_TARGET_ARCH)-xen-elf/lib/ && \ + $(INSTALL_DIR) $(CROSS_PREFIX)/$(GNU_TARGET_ARCH)-xen-elf/include/pci && \ + $(INSTALL_DATA) lib/config.h lib/header.h lib/pci.h lib/types.h $(CROSS_PREFIX)/$(GNU_TARGET_ARCH)-xen-elf/include/pci/ \ +@@ -203,8 +201,8 @@ cross-ocaml: $(OCAML_STAMPFILE) + -no-pthread -no-shared-libs -no-tk -no-curses \ + -cc "$(CC) -U_FORTIFY_SOURCE -fno-stack-protector -mno-red-zone" + $(foreach i,$(MINIOS_HASNOT),sed -i 's,^\(#define HAS_$(i)\),//\1,' ocaml-$(XEN_TARGET_ARCH)/config/s.h ; ) +- $(CROSS_MAKE) -C ocaml-$(XEN_TARGET_ARCH) world +- $(CROSS_MAKE) -C ocaml-$(XEN_TARGET_ARCH) opt ++ $(MAKE) DESTDIR= -C ocaml-$(XEN_TARGET_ARCH) world ++ $(MAKE) DESTDIR= -C ocaml-$(XEN_TARGET_ARCH) opt + $(MAKE) -C ocaml-$(XEN_TARGET_ARCH) install + touch $@ + +@@ -219,7 +217,7 @@ QEMU_ROOT := $(shell if [ -d "$(CONFIG_Q + + ifeq ($(QEMU_ROOT),.) + $(XEN_ROOT)/tools/qemu-xen-traditional-dir: +- $(CROSS_MAKE) -C $(XEN_ROOT)/tools qemu-xen-traditional-dir-find ++ $(MAKE) DESTDIR= -C $(XEN_ROOT)/tools qemu-xen-traditional-dir-find + + ioemu/linkfarm.stamp: $(XEN_ROOT)/tools/qemu-xen-traditional-dir + mkdir -p ioemu +@@ -250,7 +248,7 @@ mk-headers-$(XEN_TARGET_ARCH): ioemu/lin + ( [ -h include/xen/libelf ] || ln -sf $(XEN_ROOT)/tools/include/xen/libelf include/xen/libelf ) && \ + mkdir -p include/xen-foreign && \ + ln -sf $(wildcard $(XEN_ROOT)/tools/include/xen-foreign/*) include/xen-foreign/ && \ +- $(CROSS_MAKE) -C include/xen-foreign/ && \ ++ $(MAKE) DESTDIR= -C include/xen-foreign/ && \ + ( [ -h include/xen/foreign ] || ln -sf ../xen-foreign include/xen/foreign ) + mkdir -p libxc-$(XEN_TARGET_ARCH) + [ -h libxc-$(XEN_TARGET_ARCH)/Makefile ] || ( cd libxc-$(XEN_TARGET_ARCH) && \ +@@ -267,7 +265,7 @@ mk-headers-$(XEN_TARGET_ARCH): ioemu/lin + ln -sf $(XEN_ROOT)/tools/xenstore/*.c . && \ + ln -sf $(XEN_ROOT)/tools/xenstore/*.h . && \ + ln -sf $(XEN_ROOT)/tools/xenstore/Makefile . ) +- $(CROSS_MAKE) -C $(MINI_OS) links ++ $(MAKE) DESTDIR= -C $(MINI_OS) links + touch mk-headers-$(XEN_TARGET_ARCH) + + TARGETS_MINIOS=$(addprefix mini-os-$(XEN_TARGET_ARCH)-,$(TARGETS)) +@@ -284,7 +282,7 @@ TARGETS_MINIOS=$(addprefix mini-os-$(XEN + .PHONY: libxc + libxc: libxc-$(XEN_TARGET_ARCH)/libxenctrl.a libxc-$(XEN_TARGET_ARCH)/libxenguest.a + libxc-$(XEN_TARGET_ARCH)/libxenctrl.a: cross-zlib +- CPPFLAGS="$(TARGET_CPPFLAGS)" CFLAGS="$(TARGET_CFLAGS)" $(CROSS_MAKE) -C libxc-$(XEN_TARGET_ARCH) ++ CPPFLAGS="$(TARGET_CPPFLAGS)" CFLAGS="$(TARGET_CFLAGS)" $(MAKE) DESTDIR= -C libxc-$(XEN_TARGET_ARCH) + + libxc-$(XEN_TARGET_ARCH)/libxenguest.a: libxc-$(XEN_TARGET_ARCH)/libxenctrl.a + +@@ -302,7 +300,7 @@ ioemu: cross-zlib cross-libpci libxc + TARGET_CFLAGS="$(TARGET_CFLAGS)" \ + TARGET_LDFLAGS="$(TARGET_LDFLAGS)" \ + $(QEMU_ROOT)/xen-setup-stubdom ) +- $(CROSS_MAKE) -C ioemu -f $(QEMU_ROOT)/Makefile ++ $(MAKE) DESTDIR= -C ioemu -f $(QEMU_ROOT)/Makefile + + ###### + # caml +@@ -310,7 +308,7 @@ ioemu: cross-zlib cross-libpci libxc + + .PHONY: caml + caml: $(CROSS_ROOT) +- CPPFLAGS="$(TARGET_CPPFLAGS)" CFLAGS="$(TARGET_CFLAGS)" $(CROSS_MAKE) -C $@ LWIPDIR=$(CURDIR)/lwip-$(XEN_TARGET_ARCH) OCAMLC_CROSS_PREFIX=$(CROSS_PREFIX)/$(GNU_TARGET_ARCH)-xen-elf/bin/ ++ CPPFLAGS="$(TARGET_CPPFLAGS)" CFLAGS="$(TARGET_CFLAGS)" $(MAKE) DESTDIR= -C $@ LWIPDIR=$(CURDIR)/lwip-$(XEN_TARGET_ARCH) OCAMLC_CROSS_PREFIX=$(CROSS_PREFIX)/$(GNU_TARGET_ARCH)-xen-elf/bin/ + + ### + # C +@@ -318,7 +316,7 @@ caml: $(CROSS_ROOT) + + .PHONY: c + c: $(CROSS_ROOT) +- CPPFLAGS="$(TARGET_CPPFLAGS)" CFLAGS="$(TARGET_CFLAGS)" $(CROSS_MAKE) -C $@ LWIPDIR=$(CURDIR)/lwip-$(XEN_TARGET_ARCH) ++ CPPFLAGS="$(TARGET_CPPFLAGS)" CFLAGS="$(TARGET_CFLAGS)" $(MAKE) DESTDIR= -C $@ LWIPDIR=$(CURDIR)/lwip-$(XEN_TARGET_ARCH) + + ###### + # Grub +@@ -337,7 +335,7 @@ grub-upstream: grub-$(GRUB_VERSION).tar. + .PHONY: grub + grub: grub-upstream $(CROSS_ROOT) + mkdir -p grub-$(XEN_TARGET_ARCH) +- CPPFLAGS="$(TARGET_CPPFLAGS)" CFLAGS="$(TARGET_CFLAGS)" $(CROSS_MAKE) -C $@ OBJ_DIR=$(CURDIR)/grub-$(XEN_TARGET_ARCH) ++ CPPFLAGS="$(TARGET_CPPFLAGS)" CFLAGS="$(TARGET_CFLAGS)" $(MAKE) DESTDIR= -C $@ OBJ_DIR=$(CURDIR)/grub-$(XEN_TARGET_ARCH) + + ########## + # xenstore +@@ -345,7 +343,7 @@ grub: grub-upstream $(CROSS_ROOT) + + .PHONY: xenstore + xenstore: $(CROSS_ROOT) +- CPPFLAGS="$(TARGET_CPPFLAGS)" CFLAGS="$(TARGET_CFLAGS)" $(CROSS_MAKE) -C $@ xenstored.a CONFIG_STUBDOM=y ++ CPPFLAGS="$(TARGET_CPPFLAGS)" CFLAGS="$(TARGET_CFLAGS)" $(MAKE) DESTDIR= -C $@ xenstored.a CONFIG_STUBDOM=y + + ######## + # minios +@@ -354,23 +352,23 @@ xenstore: $(CROSS_ROOT) + .PHONY: ioemu-stubdom + ioemu-stubdom: APP_OBJS=$(CURDIR)/ioemu/i386-stubdom/qemu.a $(CURDIR)/ioemu/i386-stubdom/libqemu.a $(CURDIR)/ioemu/libqemu_common.a + ioemu-stubdom: mini-os-$(XEN_TARGET_ARCH)-ioemu lwip-$(XEN_TARGET_ARCH) libxc ioemu +- DEF_CPPFLAGS="$(TARGET_CPPFLAGS)" DEF_CFLAGS="$(TARGET_CFLAGS)" DEF_LDFLAGS="$(TARGET_LDFLAGS)" MINIOS_CONFIG="$(CURDIR)/ioemu-minios.cfg" $(CROSS_MAKE) -C $(MINI_OS) OBJ_DIR=$(CURDIR)/$< LWIPDIR=$(CURDIR)/lwip-$(XEN_TARGET_ARCH) APP_OBJS="$(APP_OBJS)" ++ DEF_CPPFLAGS="$(TARGET_CPPFLAGS)" DEF_CFLAGS="$(TARGET_CFLAGS)" DEF_LDFLAGS="$(TARGET_LDFLAGS)" MINIOS_CONFIG="$(CURDIR)/ioemu-minios.cfg" $(MAKE) DESTDIR= -C $(MINI_OS) OBJ_DIR=$(CURDIR)/$< LWIPDIR=$(CURDIR)/lwip-$(XEN_TARGET_ARCH) APP_OBJS="$(APP_OBJS)" + + .PHONY: caml-stubdom + caml-stubdom: mini-os-$(XEN_TARGET_ARCH)-caml lwip-$(XEN_TARGET_ARCH) libxc cross-ocaml caml +- DEF_CPPFLAGS="$(TARGET_CPPFLAGS)" DEF_CFLAGS="$(TARGET_CFLAGS)" DEF_LDFLAGS="$(TARGET_LDFLAGS)" MINIOS_CONFIG="$(CURDIR)/caml/minios.cfg" $(CROSS_MAKE) -C $(MINI_OS) OBJ_DIR=$(CURDIR)/$< LWIPDIR=$(CURDIR)/lwip-$(XEN_TARGET_ARCH) APP_OBJS="$(CURDIR)/caml/main-caml.o $(CURDIR)/caml/caml.o $(CAMLLIB)/libasmrun.a" ++ DEF_CPPFLAGS="$(TARGET_CPPFLAGS)" DEF_CFLAGS="$(TARGET_CFLAGS)" DEF_LDFLAGS="$(TARGET_LDFLAGS)" MINIOS_CONFIG="$(CURDIR)/caml/minios.cfg" $(MAKE) DESTDIR= -C $(MINI_OS) OBJ_DIR=$(CURDIR)/$< LWIPDIR=$(CURDIR)/lwip-$(XEN_TARGET_ARCH) APP_OBJS="$(CURDIR)/caml/main-caml.o $(CURDIR)/caml/caml.o $(CAMLLIB)/libasmrun.a" + + .PHONY: c-stubdom + c-stubdom: mini-os-$(XEN_TARGET_ARCH)-c lwip-$(XEN_TARGET_ARCH) libxc c +- DEF_CPPFLAGS="$(TARGET_CPPFLAGS)" DEF_CFLAGS="$(TARGET_CFLAGS)" DEF_LDFLAGS="$(TARGET_LDFLAGS)" MINIOS_CONFIG="$(CURDIR)/c/minios.cfg" $(CROSS_MAKE) -C $(MINI_OS) OBJ_DIR=$(CURDIR)/$< LWIPDIR=$(CURDIR)/lwip-$(XEN_TARGET_ARCH) APP_OBJS=$(CURDIR)/c/main.a ++ DEF_CPPFLAGS="$(TARGET_CPPFLAGS)" DEF_CFLAGS="$(TARGET_CFLAGS)" DEF_LDFLAGS="$(TARGET_LDFLAGS)" MINIOS_CONFIG="$(CURDIR)/c/minios.cfg" $(MAKE) DESTDIR= -C $(MINI_OS) OBJ_DIR=$(CURDIR)/$< LWIPDIR=$(CURDIR)/lwip-$(XEN_TARGET_ARCH) APP_OBJS=$(CURDIR)/c/main.a + + .PHONY: pv-grub + pv-grub: mini-os-$(XEN_TARGET_ARCH)-grub libxc grub +- DEF_CPPFLAGS="$(TARGET_CPPFLAGS)" DEF_CFLAGS="$(TARGET_CFLAGS)" DEF_LDFLAGS="$(TARGET_LDFLAGS)" MINIOS_CONFIG="$(CURDIR)/grub/minios.cfg" $(CROSS_MAKE) -C $(MINI_OS) OBJ_DIR=$(CURDIR)/$< APP_OBJS=$(CURDIR)/grub-$(XEN_TARGET_ARCH)/main.a ++ DEF_CPPFLAGS="$(TARGET_CPPFLAGS)" DEF_CFLAGS="$(TARGET_CFLAGS)" DEF_LDFLAGS="$(TARGET_LDFLAGS)" MINIOS_CONFIG="$(CURDIR)/grub/minios.cfg" $(MAKE) DESTDIR= -C $(MINI_OS) OBJ_DIR=$(CURDIR)/$< APP_OBJS=$(CURDIR)/grub-$(XEN_TARGET_ARCH)/main.a + + .PHONY: xenstore-stubdom + xenstore-stubdom: mini-os-$(XEN_TARGET_ARCH)-xenstore libxc xenstore +- DEF_CPPFLAGS="$(TARGET_CPPFLAGS)" DEF_CFLAGS="$(TARGET_CFLAGS)" DEF_LDFLAGS="$(TARGET_LDFLAGS)" MINIOS_CONFIG="$(CURDIR)/xenstore-minios.cfg" $(CROSS_MAKE) -C $(MINI_OS) OBJ_DIR=$(CURDIR)/$< APP_OBJS=$(CURDIR)/xenstore/xenstored.a ++ DEF_CPPFLAGS="$(TARGET_CPPFLAGS)" DEF_CFLAGS="$(TARGET_CFLAGS)" DEF_LDFLAGS="$(TARGET_LDFLAGS)" MINIOS_CONFIG="$(CURDIR)/xenstore-minios.cfg" $(MAKE) DESTDIR= -C $(MINI_OS) OBJ_DIR=$(CURDIR)/$< APP_OBJS=$(CURDIR)/xenstore/xenstored.a + + ######### + # install +@@ -412,13 +410,13 @@ clean: + rm -fr mini-os-$(XEN_TARGET_ARCH)-caml + rm -fr mini-os-$(XEN_TARGET_ARCH)-grub + rm -fr mini-os-$(XEN_TARGET_ARCH)-xenstore +- $(CROSS_MAKE) -C caml clean +- $(CROSS_MAKE) -C c clean ++ $(MAKE) DESTDIR= -C caml clean ++ $(MAKE) DESTDIR= -C c clean + rm -fr grub-$(XEN_TARGET_ARCH) + rm -f $(STUBDOMPATH) +- [ ! -d libxc-$(XEN_TARGET_ARCH) ] || $(CROSS_MAKE) -C libxc-$(XEN_TARGET_ARCH) clean +- -[ ! -d ioemu ] || $(CROSS_MAKE) -C ioemu clean +- -[ ! -d xenstore ] || $(CROSS_MAKE) -C xenstore clean ++ [ ! -d libxc-$(XEN_TARGET_ARCH) ] || $(MAKE) DESTDIR= -C libxc-$(XEN_TARGET_ARCH) clean ++ -[ ! -d ioemu ] || $(MAKE) DESTDIR= -C ioemu clean ++ -[ ! -d xenstore ] || $(MAKE) DESTDIR= -C xenstore clean + + # clean the cross-compilation result + .PHONY: crossclean diff --git a/network-nat.patch b/network-nat.patch deleted file mode 100644 index 9565e95..0000000 --- a/network-nat.patch +++ /dev/null @@ -1,10 +0,0 @@ -Index: xen-4.2.0-testing/tools/hotplug/Linux/network-nat -=================================================================== ---- xen-4.2.0-testing.orig/tools/hotplug/Linux/network-nat -+++ xen-4.2.0-testing/tools/hotplug/Linux/network-nat -@@ -1,4 +1,4 @@ --#!/bin/bash -x -+#!/bin/bash - #============================================================================ - # Default Xen network start/stop script when using NAT. - # Xend calls a network script when it starts. diff --git a/xen.changes b/xen.changes index 9bf96c8..1e16d68 100644 --- a/xen.changes +++ b/xen.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Mon Oct 8 14:21:59 CEST 2012 - ohering@suse.de + +- backport parallel build support for stubdom +- rename 5 patches which were merged upstream + ------------------------------------------------------------------- Fri Oct 5 21:58:46 CEST 2012 - ohering@suse.de diff --git a/xen.no-default-runlevel-4.patch b/xen.no-default-runlevel-4.patch deleted file mode 100644 index 10024be..0000000 --- a/xen.no-default-runlevel-4.patch +++ /dev/null @@ -1,21 +0,0 @@ -Related to bnc#732884 -Runlevel 4 is for local sysadmin. -He is responsible to create all required symlinks in this private runlevel. - ---- - tools/xenballoon/xenballoond.init | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) - -Index: xen-4.2.0-testing/tools/xenballoon/xenballoond.init -=================================================================== ---- xen-4.2.0-testing.orig/tools/xenballoon/xenballoond.init -+++ xen-4.2.0-testing/tools/xenballoon/xenballoond.init -@@ -14,7 +14,7 @@ - # Should-Start: - # Required-Stop: $syslog $remote_fs - # Should-Stop: --# Default-Start: 3 4 5 -+# Default-Start: 3 5 - # Default-Stop: 0 1 2 6 - # Short-Description: Start/stop xenballoond - # Description: Starts and stops the Xen ballooning daemon. diff --git a/xen.spec b/xen.spec index 830eae4..08949b1 100644 --- a/xen.spec +++ b/xen.spec @@ -195,6 +195,12 @@ Patch25952: 25952-x86-MMIO-remap-permissions.patch Patch25961: 25961-x86-HPET-interrupts.patch Patch25962: 25962-x86-assign-irq-vector-old.patch Patch25965: 25965-x86-ucode-Intel-resume.patch +Patch26006: 26006-hotplug-Linux_Remove_tracing_bash_-x_from_network-nat_script.patch +Patch26007: 26007-xenballoond.init_remove_4_from_default_runlevel.patch +Patch26008: 26008-xend-pvscsi_fix_passing_of_SCSI_control_LUNs.patch +Patch26009: 26009-xend-pvscsi_fix_usage_of_persistant_device_names_for_SCSI_devices.patch +Patch26010: 26010-xend-pvscsi_update_sysfs_parser_for_Linux_3.0.patch +Patch26011: 26011-stubdom_fix_parallel_build_by_expanding_CROSS_MAKE.patch # Upstream qemu patches # Our patches Patch301: xend-config.diff @@ -213,7 +219,6 @@ Patch322: bridge-opensuse.patch Patch323: bridge-vlan.diff Patch324: bridge-bonding.diff Patch325: bridge-record-creation.patch -Patch326: network-nat.patch Patch327: udev-rules.patch Patch328: vif-route-ifup.patch Patch329: network-nat-open-SuSEfirewall2-FORWARD.patch @@ -287,9 +292,6 @@ Patch457: xen-cpupool-xl-config-format.patch Patch458: ipxe-enable-nics.patch Patch459: blktap-close-fifos.patch Patch460: blktap-disable-debug-printf.patch -Patch461: xen-bug776995-pvscsi-persistent-names.patch -Patch462: xen-bug776995-pvscsi-no-devname.patch -Patch463: xen-bug776995-pvscsi-sysfs-parser.patch # Jim's domain lock patch Patch480: xend-domain-lock.patch Patch481: xend-domain-lock-sfex.patch @@ -310,7 +312,6 @@ Patch650: disable_emulated_device.diff Patch651: ioemu-disable-scsi.patch Patch652: ioemu-disable-emulated-ide-if-pv.patch Patch700: hv_extid_compatibility.patch -Patch701: xen.no-default-runlevel-4.patch # Build patch Patch99998: tmp-initscript-modprobe.patch Patch99999: tmp_build.patch @@ -680,6 +681,12 @@ tar xfj %{SOURCE6} -C $RPM_BUILD_DIR/%{xen_build_dir}/tools %patch25961 -p1 %patch25962 -p1 %patch25965 -p1 +%patch26006 -p1 +%patch26007 -p1 +%patch26008 -p1 +%patch26009 -p1 +%patch26010 -p1 +%patch26011 -p1 # Qemu # Our patches %patch301 -p1 @@ -698,7 +705,6 @@ tar xfj %{SOURCE6} -C $RPM_BUILD_DIR/%{xen_build_dir}/tools %patch323 -p1 %patch324 -p1 %patch325 -p1 -%patch326 -p1 %patch327 -p1 %patch328 -p1 %patch329 -p1 @@ -769,9 +775,6 @@ tar xfj %{SOURCE6} -C $RPM_BUILD_DIR/%{xen_build_dir}/tools %patch458 -p1 %patch459 -p1 %patch460 -p1 -%patch461 -p1 -%patch462 -p1 -%patch463 -p1 %patch480 -p1 %patch481 -p1 %patch500 -p1 @@ -792,7 +795,6 @@ tar xfj %{SOURCE6} -C $RPM_BUILD_DIR/%{xen_build_dir}/tools %patch651 -p1 %patch652 -p1 %patch700 -p1 -%patch701 -p1 %patch99998 -p1 %patch99999 -p1 @@ -918,7 +920,7 @@ done %if %{?with_dom0_support}0 # Stubdom %if %{?with_stubdom}0 -make stubdom +make stubdom %{?_smp_mflags} make -C stubdom install \ DESTDIR=$RPM_BUILD_ROOT MANDIR=%{_mandir} \ DOCDIR=%{_defaultdocdir}/xen INCDIR=%{_includedir}