misc tools changes, backport request
PATCH 1/1 misc tools changes, backport request
The following 5 patches were sent shortly before 4.2 was released, so they were not considered (I think). I propose the vscsi changes and the stubdom parallel build change for inclusion in 4.2.1.
Olaf
Changes:
xend/pvscsi: fix passing of SCSI control LUNs xend/pvscsi: fix usage of persistant device names for SCSI devices xend/pvscsi: update sysfs parser for Linux 3.0
stubdom: fix parallel build by expanding CROSS_MAKE tools/configure.ac: fill PACKAGE_TARNAME in AC_INIT
stubdom/Makefile | 54 +++++++++++++++++------------------- tools/configure.ac | 2 - tools/python/xen/util/vscsi_util.py | 32 ++++++++++++++++----- 3 files changed, 52 insertions(+), 36 deletions(-)
PATCH 1/1 xend/pvscsi: fix passing of SCSI control LUNs
# HG changeset patch
# User Olaf Hering <[email protected]>
# Date 1349453188 -7200
# Node ID a4053f1f58ec42a24c963cac98d66f27fa54b8cc # Parent 3eb9a891889a734a21643f02dac19b1b0cbe53f7 xend/pvscsi: fix passing of SCSI control LUNs
Currently pvscsi can not pass SCSI devices that have just a scsi_generic node. In the following example sg3 is a control LUN for the disk sdd. But vscsi=['4:0:2:0,0:0:0:0'] does not work because the internal 'devname' variable remains None. Later writing p-devname to xenstore fails because None is not a valid string variable.
Since devname is used for just informational purpose use sg also as devname.
carron:~ $ lsscsi -g
[0:0:0:0] disk ATA FK0032CAAZP HPF2 /dev/sda /dev/sg0 [4:0:0:0] disk HP P2000G3 FC/iSCSI T100 /dev/sdb /dev/sg1 [4:0:1:0] disk HP P2000G3 FC/iSCSI T100 /dev/sdc /dev/sg2 [4:0:2:0] storage HP HSV400 0950 - /dev/sg3 [4:0:2:1] disk HP HSV400 0950 /dev/sdd /dev/sg4 [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 -0
@@ -105,6 +105,8 @@ def _vscsi_get_scsidevices_by_lsscsi(opt devname = None try: sg = s[-1].split('/dev/')[1] + if devname is None: + devname = sg scsi_id = _vscsi_get_scsiid(sg) except IndexError: sg = None
PATCH 1/1 xend/pvscsi: fix usage of persistant device names for SCSI devices
In reply to Olaf Hering# HG changeset patch
# User Olaf Hering <[email protected]>
# Date 1349453205 -7200
# Node ID 9f361dc559ddf9e468bbc039584aa8837abdf2bb
# Parent a4053f1f58ec42a24c963cac98d66f27fa54b8cc xend/pvscsi: fix usage of persistant device names for SCSI devices
Currently the callers of vscsi_get_scsidevices() do not pass a mask string. This will call "lsscsi -g '[]'", which causes a lsscsi syntax error. As a result the sysfs parser _vscsi_get_scsidevices() is used. But this parser is broken and the specified names in the config file are 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'
]
tools/python/xen/util/vscsi_util.py +2 -2
@@ -150,7 +150,7 @@ def _vscsi_get_scsidevices_by_sysfs(): return devices -def vscsi_get_scsidevices(mask=""): +def vscsi_get_scsidevices(mask="*"): """ get all scsi devices information """ devices = _vscsi_get_scsidevices_by_lsscsi("[%s]" % mask)
@@ -279,7 +279,7 @@ def get_scsi_device(pHCTL): return _make_scsi_record(scsi_info) return None -def get_all_scsi_devices(mask=""): +def get_all_scsi_devices(mask="*"): scsi_records = [] for scsi_info in vscsi_get_scsidevices(mask): scsi_record = _make_scsi_record(scsi_info)
PATCH 1/1 xend/pvscsi: update sysfs parser for Linux 3.0
In reply to Olaf Hering# HG changeset patch
# User Olaf Hering <[email protected]>
# Date 1349453226 -7200
# Node ID c18b7d4f0d665d8bc9eb4ff62aad1575088db1a8 # Parent 9f361dc559ddf9e468bbc039584aa8837abdf2bb xend/pvscsi: update sysfs parser for Linux 3.0
The sysfs parser for /sys/bus/scsi/devices understands only the layout of kernel version 2.6.16. This looks as follows:
/sys/bus/scsi/devices/1:0:0:0/block:sda is a symlink to /sys/block/sda/ /sys/bus/scsi/devices/1:0:0:0/scsi_generic:sg1 is a symlink to /sys/class/scsi_generic/sg1
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 point to the desired scsi devices. They just clutter the devices array.
The directory layout in '1:0:0:0' changed as well, the 'type:name' notation was replaced with 'type/name' directories:
/sys/bus/scsi/devices/1:0:0:0/block/sda/
/sys/bus/scsi/devices/1:0:0:0/scsi_generic/sg1/
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 +21 -5
@@ -130,20 +130,36 @@ def _vscsi_get_scsidevices_by_sysfs(): for dirpath, dirnames, files in os.walk(sysfs_mnt + SYSFS_SCSI_PATH): for hctl in dirnames: + if len(hctl.split(':')) != 4: + continue paths = os.path.join(dirpath, hctl) devname = None sg = None scsi_id = None for f in os.listdir(paths): realpath = os.path.realpath(os.path.join(paths, f)) - if re.match('^block', f) or \ - re.match('^tape', f) or \ - re.match('^scsi_changer', f) or \ - re.match('^onstream_tape', f): + if re.match('^block:', f) or \ + re.match('^tape:', f) or \ + re.match('^scsi_changer:', f) or \ + re.match('^onstream_tape:', f): devname = os.path.basename(realpath) + elif f == "block" or \ + f == "tape" or \ + f == "scsi_changer" or \ + f == "onstream_tape": + for dir in os.listdir(os.path.join(paths, f)): + if os.path.exists(os.path.join(paths, f, dir, "dev")): + devname = os.path.basename(dir) - if re.match('^scsi_generic', f): + if re.match('^scsi_generic:', f): sg = os.path.basename(realpath) + elif f == "scsi_generic": + for dir in os.listdir(os.path.join(paths, f)): + if os.path.exists(os.path.join(paths, f, dir, "dev")): + sg = os.path.basename(dir) + if sg: + if devname is None: + devname = sg scsi_id = _vscsi_get_scsiid(sg) devices.append([hctl, devname, sg, scsi_id])
PATCH 1/1 stubdom: fix parallel build by expanding CROSS_MAKE
In reply to Olaf Hering# HG changeset patch
# User Olaf Hering <[email protected]>
# Date 1349453236 -7200
# Node ID 3753af2506dab7f92d43693104686efd812372a5 # Parent c18b7d4f0d665d8bc9eb4ff62aad1575088db1a8
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 qvoids 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
stubdom/Makefile +26 -28
@@ -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
PATCH 1/1 tools/configure.ac: fill PACKAGE_TARNAME in AC_INIT
In reply to Olaf Hering# HG changeset patch
# User Olaf Hering <[email protected]>
# Date 1349453874 -7200
# Node ID 93e92c12bc13952ed15312f937a37e6ab2d197ad # Parent 3753af2506dab7f92d43693104686efd812372a5 tools/configure.ac: fill PACKAGE_TARNAME in AC_INIT
Upcoming changes may move DOCDIR from Config.mk to config/Tools.mk. To preserve the currently used path, which ends with /xen, specify a value for PACKAGE_TARNAME. Without this change the path would end with /xen-hypervisor.
Please rerun autoconf after applying this.
tools/configure.ac +1 -1
@@ -3,7 +3,7 @@ AC_PREREQ([2.67]) AC_INIT([Xen Hypervisor], m4_esyscmd([../version.sh ../xen/Makefile]), - [[email protected]]) + [[email protected]], [xen], [http://www.xen.org/]) AC_CONFIG_SRCDIR([libxl/libxl.c]) AC_CONFIG_FILES([../config/Tools.mk]) AC_CONFIG_HEADERS([config.h])
Quoted 3 lines · Olaf Hering
The following 5 patches were sent shortly before 4.2 was released, so they were not considered (I think). I propose the vscsi changes and the stubdom parallel build change for inclusion in 4.2.1.
I nearly skipped this because it said backport request but I spotted that these were actually new patches to also be backported. I've now acked the unacked ones and applied.
CCing Ian J for the backport request.
Quoted 20 lines
Olaf
Changes:
xend/pvscsi: fix passing of SCSI control LUNs xend/pvscsi: fix usage of persistant device names for SCSI devices xend/pvscsi: update sysfs parser for Linux 3.0
stubdom: fix parallel build by expandingCROSS_MAKEtools/configure.ac: fillPACKAGE_TARNAMEinAC_INITstubdom/Makefile | 54 +++++++++++++++++------------------- tools/configure.ac | 2 - tools/python/xen/util/vscsi_util.py | 32 ++++++++++++++++----- 3 files changed, 52 insertions(+), 36 deletions(-)_______________________________________________
Xen-devel mailing list
[email protected]
http://lists.xen.org/xen-devel
Ian Campbell writes ("Re: [Xen-devel] [PATCH 0 of 5] misc tools changes, backport request"):
Quoted 8 lines · Olaf Hering
Quoted 3 lines
The following 5 patches were sent shortly before 4.2 was released, so they were not considered (I think). I propose the vscsi changes and the stubdom parallel build change for inclusion in 4.2.1.
I nearly skipped this because it said backport request but I spotted that these were actually new patches to also be backported. I've now acked the unacked ones and applied.
...
Quoted 1 line
Quoted 1 line
Changes:
I have backported these to 4.2:
Quoted 4 lines
Quoted 4 lines
xend/pvscsi: fix passing of SCSI control LUNs xend/pvscsi: fix usage of persistant device names for SCSI devices xend/pvscsi: update sysfs parser for Linux 3.0
stubdom: fix parallel build by expandingCROSS_MAKE
This one doesn't seem to actually need backporting, based on the description ?
Quoted 1 line
Quoted 1 line
tools/configure.ac: fillPACKAGE_TARNAMEinAC_INIT
Ian.
Quoted 4 lines · Ian Jackson
This one doesn't seem to actually need backporting, based on the description ?
Quoted 1 line
Quoted 1 line
tools/configure.ac: fillPACKAGE_TARNAMEinAC_INIT
Sorry, that one appearently slipped into the list due to copy&paste.
Olaf