xen.org writes ("[xen-unstable bisection] complete build-i386-oldkern"):
> branch xen-unstable
> xen branch xen-unstable
> job build-i386-oldkern
> test xen-build
>
> Tree: linux http://hg.uk.xensource.com/linux-2.6.18-xen.hg
> Tree: xen http://hg.uk.xensource.com/xen-unstable.hg
>
> *** Found and reproduced problem changeset ***
>
> Bug is in tree: xen http://hg.uk.xensource.com/xen-unstable.hg
> Bug introduced: 0d21b68f528b
> Bug not present: d1d6abc1db20
>
>
> changeset: 23828:0d21b68f528b
> user: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
> date: Tue Sep 13 10:27:20 2011 +0100
>
> Move the ioemu-dir-find shell script to an external file
>
> Add support for configuring upstream qemu and rename ioemu-remote
> ioemu-dir-remote.
>
> Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxx
I have just pushed the attached changeset.
Ian.
# Hg changeset patch
# User Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx>
# Date 1315996693 -3600
# Node ID e90438f6e6d1585a71b18784a99c162b5d95f390
# Parent 51913fe3d25a3756edf9af02843abdb36873618d
tools: Revert seabios and upstream qemu build changes
These have broken the build and it seems to be difficult to fix. So
we will revert the whole lot for now, and await corrected patch(es).
Revert "fix the build when CONFIG_QEMU is specified by the user"
Revert "tools: fix permissions of git-checkout.sh"
Revert "scripts/git-checkout.sh: Is not bash specific. Invoke with /bin/sh."
Revert "Clone and build Seabios by default"
Revert "Clone and build upstream Qemu by default"
Revert "Rename ioemu-dir as qemu-xen-traditional-dir"
Revert "Move the ioemu-dir-find shell script to an external file"
Signed-off-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
diff -r 51913fe3d25a -r e90438f6e6d1 .hgignore
--- a/.hgignore Tue Sep 13 15:46:47 2011 +0100
+++ b/.hgignore Wed Sep 14 11:38:13 2011 +0100
@@ -291,12 +291,8 @@
^tools/xm-test/lib/XmTestLib/config.py$
^tools/xm-test/lib/XmTestReport/xmtest.py$
^tools/xm-test/tests/.*\.test$
-^tools/qemu-xen-traditional-dir-remote
-^tools/qemu-xen-traditional-dir$
-^tools/qemu-xen-dir-remote
-^tools/qemu-xen-dir$
-^tools/tools/firmware/seabios-dir-remote
-^tools/tools/firmware/seabios-dir$
+^tools/ioemu-remote
+^tools/ioemu-dir$
^tools/ocaml/.*/.*\.annot$
^tools/ocaml/.*/.*\.cmx?a$
^tools/ocaml/.*/META$
diff -r 51913fe3d25a -r e90438f6e6d1 Config.mk
--- a/Config.mk Tue Sep 13 15:46:47 2011 +0100
+++ b/Config.mk Wed Sep 14 11:38:13 2011 +0100
@@ -192,12 +192,6 @@ QEMU_REMOTE=git://xenbits.xensource.com/
QEMU_REMOTE=git://xenbits.xensource.com/qemu-xen-unstable.git
endif
-# Only available through the git protocol at the moment
-QEMU_UPSTREAM_URL ?= git://xenbits.xen.org/people/sstabellini/qemu-dm.git
-QEMU_UPSTREAM_TAG ?= origin/xen-stable-0.15
-SEABIOS_UPSTREAM_URL=git://git.qemu.org/seabios.git
-SEABIOS_UPSTREAM_TAG ?= 7fc039e9c262b4199fab497f3e12f4e425c37560
-
# Specify which qemu-dm to use. This may be `ioemu' to use the old
# Mercurial in-tree version, or a local directory, or a git URL.
# CONFIG_QEMU ?= `pwd`/$(XEN_ROOT)/../qemu-xen.git
@@ -209,6 +203,15 @@ QEMU_TAG ?= cd776ee9408ff127f934a707c1a3
# Short answer -- do not enable this unless you know what you are
# doing and are prepared for some pain.
+
+# SeaBIOS integration is a work in progress. Before enabling this
+# option you must clone git://git.qemu.org/seabios.git/, possibly add
+# some development patches and then build it yourself before pointing
+# this variable to it (using an absolute path).
+#
+# Note that using SeaBIOS requires the use the upstream qemu as the
+# device model.
+SEABIOS_DIR ?=
# Optional components
XENSTAT_XENTOP ?= y
diff -r 51913fe3d25a -r e90438f6e6d1 Makefile
--- a/Makefile Tue Sep 13 15:46:47 2011 +0100
+++ b/Makefile Wed Sep 14 11:38:13 2011 +0100
@@ -70,7 +70,7 @@ install-tools:
$(MAKE) -C tools install
ifeq ($(CONFIG_IOEMU),y)
-install-tools: tools/qemu-xen-traditional-dir tools/qemu-xen-dir
+install-tools: tools/ioemu-dir
endif
.PHONY: install-kernels
@@ -78,21 +78,18 @@ install-kernels:
for i in $(XKERNELS) ; do $(MAKE) $$i-install || exit 1; done
.PHONY: install-stubdom
-install-stubdom: tools/qemu-xen-traditional-dir install-tools
+install-stubdom: tools/ioemu-dir install-tools
$(MAKE) -C stubdom install
ifeq (x86_64,$(XEN_TARGET_ARCH))
XEN_TARGET_ARCH=x86_32 $(MAKE) -C stubdom install-grub
endif
-tools/qemu-xen-traditional-dir:
- $(MAKE) -C tools qemu-xen-traditional-dir-find
+tools/ioemu-dir:
+ $(MAKE) -C tools ioemu-dir-find
-.PHONY: tools/qemu-xen-traditional-dir-force-update
-tools/qemu-xen-traditional-dir-force-update:
- $(MAKE) -C tools qemu-xen-traditional-dir-force-update
-
-tools/qemu-xen-dir:
- $(MAKE) -C tools qemu-xen-dir-find
+.PHONY: tools/ioemu-dir-force-update
+tools/ioemu-dir-force-update:
+ $(MAKE) -C tools ioemu-dir-force-update
.PHONY: install-docs
install-docs:
diff -r 51913fe3d25a -r e90438f6e6d1 scripts/git-checkout.sh
--- a/scripts/git-checkout.sh Tue Sep 13 15:46:47 2011 +0100
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,47 +0,0 @@
-#!/bin/sh
-
-TREE=$1
-TAG=$2
-DIR=$3
-
-
-if test -d $TREE; then
- mkdir -p $DIR
- ROOT=$TREE
-else
- if test \! -d $DIR-remote; then
- rm -rf $DIR-remote $DIR-remote.tmp;
- mkdir $DIR-remote.tmp; rmdir $DIR-remote.tmp;
- git clone $TREE $DIR-remote.tmp;
- if test "$TAG" ; then
- cd $DIR-remote.tmp
- git branch -D dummy >/dev/null 2>&1 ||:
- git checkout -b dummy $TAG
- cd ..
- fi
- mv $DIR-remote.tmp $DIR-remote
- fi
- rm -f $DIR
- ln -sf $DIR-remote $DIR
- ROOT=.
-fi
-
-set -e
-cd $DIR
-# is this qemu-xen-traditional?
-if test -f $ROOT/xen-setup; then
- QEMU_ROOT=$ROOT $ROOT/xen-setup $IOEMU_CONFIGURE_CROSS
-# is this qemu-xen?
-elif test -f $ROOT/configure; then
- cd $ROOT
- ./configure --enable-xen --target-list=i386-softmmu \
- --extra-cflags="-I$XEN_ROOT/tools/include \
- -I$XEN_ROOT/tools/libxc \
- -I$XEN_ROOT/tools/xenstore" \
- --extra-ldflags="-L$XEN_ROOT/tools/libxc \
- -L$XEN_ROOT/tools/libxenstore" \
- --bindir=/usr/lib/xen/bin \
- --disable-kvm \
- $IOEMU_CONFIGURE_CROSS
-fi
-
diff -r 51913fe3d25a -r e90438f6e6d1 tools/Makefile
--- a/tools/Makefile Tue Sep 13 15:46:47 2011 +0100
+++ b/tools/Makefile Wed Sep 14 11:38:13 2011 +0100
@@ -30,8 +30,7 @@ SUBDIRS-$(LIBXENAPI_BINDINGS) += libxen
# do not recurse in to a dir we are about to delete
ifneq "$(MAKECMDGOALS)" "distclean"
-SUBDIRS-$(CONFIG_IOEMU) += qemu-xen-traditional-dir
-SUBDIRS-$(CONFIG_IOEMU) += qemu-xen-dir
+SUBDIRS-$(CONFIG_IOEMU) += ioemu-dir
endif
SUBDIRS-y += xenpmd
@@ -71,8 +70,7 @@ clean: subdirs-clean
.PHONY: distclean
distclean: subdirs-distclean
- rm -rf qemu-xen-traditional-dir qemu-xen-traditional-dir-remote
- rm -rf qemu-xen-dir qemu-xen-dir-remote
+ rm -rf ioemu-dir ioemu-remote
ifneq ($(XEN_COMPILE_ARCH),$(XEN_TARGET_ARCH))
IOEMU_CONFIGURE_CROSS ?= --cpu=$(XEN_TARGET_ARCH) \
@@ -80,35 +78,51 @@ IOEMU_CONFIGURE_CROSS ?= --cpu=$(XEN_TAR
--interp-prefix=$(CROSS_SYS_ROOT)
endif
-qemu-xen-traditional-dir-find:
- $(XEN_ROOT)/scripts/git-checkout.sh $(CONFIG_QEMU) $(QEMU_TAG)
qemu-xen-traditional-dir
-
-qemu-xen-dir-find:
- $(XEN_ROOT)/scripts/git-checkout.sh $(QEMU_UPSTREAM_URL)
$(QEMU_UPSTREAM_TAG) qemu-xen-dir
-
-.PHONY: qemu-xen-traditional-dir-force-update
-qemu-xen-traditional-dir-force-update:
+QEMU_ROOT := $(shell if [ -d "$(CONFIG_QEMU)" ]; then echo "$(CONFIG_QEMU)";
else echo .; fi)
+ifneq ($(QEMU_ROOT),.)
+export QEMU_ROOT
+endif
+
+ioemu-dir-find:
+ set -ex; \
+ if test -d $(CONFIG_QEMU); then \
+ mkdir -p ioemu-dir; \
+ else \
+ if [ ! -d ioemu-remote ]; then \
+ rm -rf ioemu-remote ioemu-remote.tmp; \
+ mkdir ioemu-remote.tmp; rmdir ioemu-remote.tmp; \
+ $(GIT) clone $(CONFIG_QEMU) ioemu-remote.tmp; \
+ if [ "$(QEMU_TAG)" ]; then \
+ cd ioemu-remote.tmp; \
+ $(GIT) branch -D dummy >/dev/null 2>&1 ||:; \
+ $(GIT) checkout -b dummy $(QEMU_TAG); \
+ cd ..; \
+ fi; \
+ mv ioemu-remote.tmp ioemu-remote; \
+ fi; \
+ rm -f ioemu-dir; \
+ ln -sf ioemu-remote ioemu-dir; \
+ fi
+ set -e; \
+ $(buildmakevars2shellvars); \
+ cd ioemu-dir; \
+ $(QEMU_ROOT)/xen-setup $(IOEMU_CONFIGURE_CROSS)
+
+.PHONY: ioemu-dir-force-update
+ioemu-dir-force-update:
set -ex; \
if [ "$(QEMU_TAG)" ]; then \
- cd qemu-xen-traditional-dir-remote; \
+ cd ioemu-remote; \
$(GIT) fetch origin; \
$(GIT) reset --hard $(QEMU_TAG); \
fi
-subdir-all-qemu-xen-traditional-dir subdir-install-qemu-xen-traditional-dir:
qemu-xen-traditional-dir-find
+subdir-all-ioemu-dir subdir-install-ioemu-dir: ioemu-dir-find
-subdir-clean-qemu-xen-traditional-dir:
- set -e; if test -d qemu-xen-traditional-dir/.; then \
+subdir-clean-ioemu-dir:
+ set -e; if test -d ioemu-dir/.; then \
$(buildmakevars2shellvars); \
- $(MAKE) -C qemu-xen-traditional-dir clean; \
- fi
-
-subdir-all-qemu-xen-dir subdir-install-qemu-xen-dir: qemu-xen-dir-find
-
-subdir-clean-qemu-xen-dir:
- set -e; if test -d qemu-xen-dir/.; then \
- $(buildmakevars2shellvars); \
- $(MAKE) -C qemu-xen-dir clean; \
+ $(MAKE) -C ioemu-dir clean; \
fi
subdir-clean-debugger/gdbsx subdir-distclean-debugger/gdbsx: .phony
diff -r 51913fe3d25a -r e90438f6e6d1 tools/firmware/Makefile
--- a/tools/firmware/Makefile Tue Sep 13 15:46:47 2011 +0100
+++ b/tools/firmware/Makefile Wed Sep 14 11:38:13 2011 +0100
@@ -6,18 +6,13 @@ INST_DIR := $(DESTDIR)$(XENFIRMWAREDIR)
INST_DIR := $(DESTDIR)$(XENFIRMWAREDIR)
SUBDIRS :=
-SUBDIRS += seabios-dir
SUBDIRS += rombios
SUBDIRS += vgabios
SUBDIRS += etherboot
SUBDIRS += hvmloader
-seabios-dir:
- $(XEN_ROOT)/scripts/git-checkout.sh $(SEABIOS_UPSTREAM_URL)
$(SEABIOS_UPSTREAM_TAG) seabios-dir
- cp seabios-config seabios-dir/.config;
-
.PHONY: all
-all: seabios-dir
+all:
@set -e; if [ $$((`( bcc -v 2>&1 | grep version || echo 0.0.0 ) | cut
-d' ' -f 3 | awk -F. '{ printf "0x%02x%02x%02x", $$1, $$2, $$3}'`)) -lt
$$((0x00100e)) ] ; then \
echo
"==========================================================================="; \
echo "Require dev86 rpm or bin86 & bcc debs version >= 0.16.14 to build
firmware!"; \
@@ -40,7 +35,4 @@ distclean: subdirs-distclean
distclean: subdirs-distclean
subdir-distclean-etherboot: .phony
- $(MAKE) -C etherboot distclean
-
-subdir-distclean-seabios-dir: .phony
- rm -rf seabios-dir seabios-dir-remote
+ $(MAKE) -C etherboot distclean
\ No newline at end of file
diff -r 51913fe3d25a -r e90438f6e6d1 tools/firmware/hvmloader/Makefile
--- a/tools/firmware/hvmloader/Makefile Tue Sep 13 15:46:47 2011 +0100
+++ b/tools/firmware/hvmloader/Makefile Wed Sep 14 11:38:13 2011 +0100
@@ -44,7 +44,6 @@ ROMBIOS_ROM := $(ROMBIOS_DIR)/BIOS-bochs
ROMBIOS_ROM := $(ROMBIOS_DIR)/BIOS-bochs-latest
endif
-SEABIOS_DIR := ../seabios-dir
ifneq ($(SEABIOS_DIR),)
OBJS += seabios.o
CFLAGS += -DENABLE_SEABIOS
diff -r 51913fe3d25a -r e90438f6e6d1 tools/firmware/seabios-config
--- a/tools/firmware/seabios-config Tue Sep 13 15:46:47 2011 +0100
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,73 +0,0 @@
-#
-# Automatically generated make config: don't edit
-# SeaBIOS Configuration
-# Wed Sep 7 13:03:21 2011
-#
-
-#
-# General Features
-#
-# CONFIG_COREBOOT is not set
-CONFIG_XEN=y
-CONFIG_THREADS=y
-# CONFIG_THREAD_OPTIONROMS is not set
-CONFIG_RELOCATE_INIT=y
-CONFIG_BOOTMENU=y
-# CONFIG_BOOTSPLASH is not set
-CONFIG_BOOTORDER=y
-
-#
-# Hardware support
-#
-CONFIG_ATA=y
-CONFIG_ATA_DMA=y
-CONFIG_ATA_PIO32=y
-CONFIG_AHCI=y
-CONFIG_VIRTIO_BLK=y
-CONFIG_FLOPPY=y
-CONFIG_PS2PORT=y
-CONFIG_USB=y
-CONFIG_USB_UHCI=y
-CONFIG_USB_OHCI=y
-CONFIG_USB_EHCI=y
-CONFIG_USB_MSC=y
-CONFIG_USB_HUB=y
-CONFIG_USB_KEYBOARD=y
-CONFIG_USB_MOUSE=y
-CONFIG_SERIAL=y
-CONFIG_LPT=y
-# CONFIG_USE_SMM is not set
-CONFIG_MTRR_INIT=y
-
-#
-# BIOS interfaces
-#
-CONFIG_DRIVES=y
-CONFIG_CDROM_BOOT=y
-CONFIG_CDROM_EMU=y
-CONFIG_PCIBIOS=y
-CONFIG_APMBIOS=y
-CONFIG_PNPBIOS=y
-CONFIG_OPTIONROMS=y
-# CONFIG_OPTIONROMS_DEPLOYED is not set
-CONFIG_PMM=y
-CONFIG_BOOT=y
-CONFIG_KEYBOARD=y
-CONFIG_KBD_CALL_INT15_4F=y
-CONFIG_MOUSE=y
-CONFIG_S3_RESUME=y
-# CONFIG_DISABLE_A20 is not set
-
-#
-# BIOS Tables
-#
-CONFIG_PIRTABLE=y
-CONFIG_MPTABLE=y
-CONFIG_SMBIOS=y
-CONFIG_ACPI=y
-
-#
-# Debugging
-#
-CONFIG_DEBUG_LEVEL=1
-# CONFIG_DEBUG_SERIAL is not set
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|