All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 1/4] Move the ioemu-dir-find shell script to an external file
@ 2011-09-08 17:47 stefano.stabellini
  2011-09-08 17:47 ` [PATCH v2 2/4] Rename ioemu-dir as qemu-xen-traditional-dir stefano.stabellini
                   ` (2 more replies)
  0 siblings, 3 replies; 17+ messages in thread
From: stefano.stabellini @ 2011-09-08 17:47 UTC (permalink / raw)
  To: xen-devel; +Cc: keir, Ian.Campbell, stefano.stabellini

Add support for configuring upstream qemu and rename ioemu-remote
ioemu-dir-remote.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>

diff --git a/tools/Makefile b/tools/Makefile
--- a/tools/Makefile
+++ b/tools/Makefile
@@ -70,7 +70,7 @@ clean: subdirs-clean
 
 .PHONY: distclean
 distclean: subdirs-distclean
-	rm -rf ioemu-dir ioemu-remote
+	rm -rf ioemu-dir ioemu-dir-remote
 
 ifneq ($(XEN_COMPILE_ARCH),$(XEN_TARGET_ARCH))
 IOEMU_CONFIGURE_CROSS ?= --cpu=$(XEN_TARGET_ARCH) \
@@ -78,41 +78,14 @@ IOEMU_CONFIGURE_CROSS ?= --cpu=$(XEN_TAR
 			 --interp-prefix=$(CROSS_SYS_ROOT)
 endif
 
-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)
-
+	$(XEN_ROOT)/tools/qemu-checkout.sh $(CONFIG_QEMU) $(QEMU_TAG) ioemu-dir
+	
 .PHONY: ioemu-dir-force-update
 ioemu-dir-force-update:
 	set -ex; \
 	if [ "$(QEMU_TAG)" ]; then \
-		cd ioemu-remote; \
+		cd ioemu-dir-remote; \
 		$(GIT) fetch origin; \
 		$(GIT) reset --hard $(QEMU_TAG); \
 	fi
diff --git a/tools/qemu-checkout.sh b/tools/qemu-checkout.sh
new file mode 100755
--- /dev/null
+++ b/tools/qemu-checkout.sh
@@ -0,0 +1,44 @@
+#!/bin/bash
+
+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
+if test -f $ROOT/xen-setup; then
+	$ROOT/xen-setup $IOEMU_CONFIGURE_CROSS
+else
+	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

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [PATCH v2 2/4] Rename ioemu-dir as qemu-xen-traditional-dir
  2011-09-08 17:47 [PATCH v2 1/4] Move the ioemu-dir-find shell script to an external file stefano.stabellini
@ 2011-09-08 17:47 ` stefano.stabellini
  2011-09-08 17:47 ` [PATCH v2 3/4] Clone and build upstream Qemu by default stefano.stabellini
  2011-09-08 17:47 ` [PATCH v2 4/4] Clone and build Seabios " stefano.stabellini
  2 siblings, 0 replies; 17+ messages in thread
From: stefano.stabellini @ 2011-09-08 17:47 UTC (permalink / raw)
  To: xen-devel; +Cc: keir, Ian.Campbell, stefano.stabellini

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>

diff -r ecafd034af0e Makefile
--- a/Makefile	Thu Sep 08 16:52:45 2011 +0000
+++ b/Makefile	Thu Sep 08 16:59:19 2011 +0000
@@ -70,7 +70,7 @@ install-tools:
 	$(MAKE) -C tools install
 
 ifeq ($(CONFIG_IOEMU),y)
-install-tools: tools/ioemu-dir
+install-tools: tools/qemu-xen-traditional-dir
 endif
 
 .PHONY: install-kernels
@@ -78,18 +78,18 @@ install-kernels:
 	for i in $(XKERNELS) ; do $(MAKE) $$i-install || exit 1; done
 
 .PHONY: install-stubdom
-install-stubdom: tools/ioemu-dir install-tools
+install-stubdom: tools/qemu-xen-traditional-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/ioemu-dir:
-	$(MAKE) -C tools ioemu-dir-find
+tools/qemu-xen-traditional-dir:
+	$(MAKE) -C tools qemu-xen-traditional-dir-find
 
-.PHONY: tools/ioemu-dir-force-update
-tools/ioemu-dir-force-update:
-	$(MAKE) -C tools ioemu-dir-force-update
+.PHONY: tools/qemu-xen-traditional-dir-force-update
+tools/qemu-xen-traditional-dir-force-update:
+	$(MAKE) -C tools qemu-xen-traditional-dir-force-update
 
 .PHONY: install-docs
 install-docs:
diff -r ecafd034af0e tools/Makefile
--- a/tools/Makefile	Thu Sep 08 16:52:45 2011 +0000
+++ b/tools/Makefile	Thu Sep 08 16:59:19 2011 +0000
@@ -30,7 +30,7 @@ SUBDIRS-$(LIBXENAPI_BINDINGS) += libxen
 
 # do not recurse in to a dir we are about to delete
 ifneq "$(MAKECMDGOALS)" "distclean"
-SUBDIRS-$(CONFIG_IOEMU) += ioemu-dir
+SUBDIRS-$(CONFIG_IOEMU) += qemu-xen-traditional-dir
 endif
 
 SUBDIRS-y += xenpmd
@@ -70,7 +70,7 @@ clean: subdirs-clean
 
 .PHONY: distclean
 distclean: subdirs-distclean
-	rm -rf ioemu-dir ioemu-dir-remote
+	rm -rf qemu-xen-traditional-dir qemu-xen-traditional-dir-remote
 
 ifneq ($(XEN_COMPILE_ARCH),$(XEN_TARGET_ARCH))
 IOEMU_CONFIGURE_CROSS ?= --cpu=$(XEN_TARGET_ARCH) \
@@ -78,24 +78,24 @@ IOEMU_CONFIGURE_CROSS ?= --cpu=$(XEN_TAR
 			 --interp-prefix=$(CROSS_SYS_ROOT)
 endif
 
-ioemu-dir-find:
-	$(XEN_ROOT)/tools/qemu-checkout.sh $(CONFIG_QEMU) $(QEMU_TAG) ioemu-dir
+qemu-xen-traditional-dir-find:
+	$(XEN_ROOT)/tools/qemu-checkout.sh $(CONFIG_QEMU) $(QEMU_TAG) qemu-xen-traditional-dir
 	
-.PHONY: ioemu-dir-force-update
-ioemu-dir-force-update:
+.PHONY: qemu-xen-traditional-dir-force-update
+qemu-xen-traditional-dir-force-update:
 	set -ex; \
 	if [ "$(QEMU_TAG)" ]; then \
-		cd ioemu-dir-remote; \
+		cd qemu-xen-traditional-dir-remote; \
 		$(GIT) fetch origin; \
 		$(GIT) reset --hard $(QEMU_TAG); \
 	fi
 
-subdir-all-ioemu-dir subdir-install-ioemu-dir: ioemu-dir-find
+subdir-all-qemu-xen-traditional-dir subdir-install-qemu-xen-traditional-dir: qemu-xen-traditional-dir-find
 
-subdir-clean-ioemu-dir:
-	set -e; if test -d ioemu-dir/.; then \
+subdir-clean-qemu-xen-traditional-dir:
+	set -e; if test -d qemu-xen-traditional-dir/.; then \
 		$(buildmakevars2shellvars); \
-		$(MAKE) -C ioemu-dir clean; \
+		$(MAKE) -C qemu-xen-traditional-dir clean; \
 	fi
 
 subdir-clean-debugger/gdbsx subdir-distclean-debugger/gdbsx: .phony

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [PATCH v2 3/4] Clone and build upstream Qemu by default
  2011-09-08 17:47 [PATCH v2 1/4] Move the ioemu-dir-find shell script to an external file stefano.stabellini
  2011-09-08 17:47 ` [PATCH v2 2/4] Rename ioemu-dir as qemu-xen-traditional-dir stefano.stabellini
@ 2011-09-08 17:47 ` stefano.stabellini
  2011-09-08 17:56   ` Ian Campbell
  2011-09-08 17:47 ` [PATCH v2 4/4] Clone and build Seabios " stefano.stabellini
  2 siblings, 1 reply; 17+ messages in thread
From: stefano.stabellini @ 2011-09-08 17:47 UTC (permalink / raw)
  To: xen-devel; +Cc: keir, Ian.Campbell, stefano.stabellini

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>

diff -r 80ba2c7abbd2 Config.mk
--- a/Config.mk	Thu Sep 08 16:59:19 2011 +0000
+++ b/Config.mk	Thu Sep 08 17:18:48 2011 +0000
@@ -192,6 +192,10 @@ else
 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
+
 # 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
diff -r 80ba2c7abbd2 Makefile
--- a/Makefile	Thu Sep 08 16:59:19 2011 +0000
+++ b/Makefile	Thu Sep 08 17:18:48 2011 +0000
@@ -70,7 +70,7 @@ install-tools:
 	$(MAKE) -C tools install
 
 ifeq ($(CONFIG_IOEMU),y)
-install-tools: tools/qemu-xen-traditional-dir
+install-tools: tools/qemu-xen-traditional-dir tools/qemu-xen-dir
 endif
 
 .PHONY: install-kernels
@@ -91,6 +91,9 @@ tools/qemu-xen-traditional-dir:
 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: install-docs
 install-docs:
 	sh ./docs/check_pkgs && $(MAKE) -C docs install || true
diff -r 80ba2c7abbd2 tools/Makefile
--- a/tools/Makefile	Thu Sep 08 16:59:19 2011 +0000
+++ b/tools/Makefile	Thu Sep 08 17:18:48 2011 +0000
@@ -31,6 +31,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
 endif
 
 SUBDIRS-y += xenpmd
@@ -71,6 +72,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
 
 ifneq ($(XEN_COMPILE_ARCH),$(XEN_TARGET_ARCH))
 IOEMU_CONFIGURE_CROSS ?= --cpu=$(XEN_TARGET_ARCH) \
@@ -81,6 +83,9 @@ endif
 qemu-xen-traditional-dir-find:
 	$(XEN_ROOT)/tools/qemu-checkout.sh $(CONFIG_QEMU) $(QEMU_TAG) qemu-xen-traditional-dir
 	
+qemu-xen-dir-find:
+	$(XEN_ROOT)/tools/qemu-checkout.sh $(QEMU_UPSTREAM_URL) $(QEMU_UPSTREAM_TAG) qemu-xen-dir
+	
 .PHONY: qemu-xen-traditional-dir-force-update
 qemu-xen-traditional-dir-force-update:
 	set -ex; \
@@ -98,6 +103,14 @@ subdir-clean-qemu-xen-traditional-dir:
 		$(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; \
+	fi
+
 subdir-clean-debugger/gdbsx subdir-distclean-debugger/gdbsx: .phony
 	$(MAKE) -C debugger/gdbsx clean

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [PATCH v2 4/4] Clone and build Seabios by default
  2011-09-08 17:47 [PATCH v2 1/4] Move the ioemu-dir-find shell script to an external file stefano.stabellini
  2011-09-08 17:47 ` [PATCH v2 2/4] Rename ioemu-dir as qemu-xen-traditional-dir stefano.stabellini
  2011-09-08 17:47 ` [PATCH v2 3/4] Clone and build upstream Qemu by default stefano.stabellini
@ 2011-09-08 17:47 ` stefano.stabellini
  2011-09-08 18:00   ` Ian Campbell
  2 siblings, 1 reply; 17+ messages in thread
From: stefano.stabellini @ 2011-09-08 17:47 UTC (permalink / raw)
  To: xen-devel; +Cc: keir, Ian.Campbell, stefano.stabellini

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>

diff -r ef27b472d4f3 Config.mk
--- a/Config.mk	Thu Sep 08 17:19:12 2011 +0000
+++ b/Config.mk	Thu Sep 08 17:29:50 2011 +0000
@@ -195,6 +195,8 @@ 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.
@@ -208,15 +210,6 @@ 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
 VTPM_TOOLS         ?= n
diff -r ef27b472d4f3 tools/firmware/Makefile
--- a/tools/firmware/Makefile	Thu Sep 08 17:19:12 2011 +0000
+++ b/tools/firmware/Makefile	Thu Sep 08 17:29:50 2011 +0000
@@ -4,15 +4,35 @@ include $(XEN_ROOT)/tools/Rules.mk
 # hvmloader is a 32-bit protected mode binary.
 TARGET      := hvmloader/hvmloader
 INST_DIR := $(DESTDIR)$(XENFIRMWAREDIR)
+SEABIOS_DIR := seabios-dir
 
 SUBDIRS :=
+SUBDIRS += $(SEABIOS_DIR)
 SUBDIRS += rombios
 SUBDIRS += vgabios
 SUBDIRS += etherboot
 SUBDIRS += hvmloader
 
+$(SEABIOS_DIR):
+	set -ex; \
+	if [ ! -d seabios-remote ]; then \
+		rm -rf seabios-remote seabios-remote.tmp; \
+		mkdir seabios-remote.tmp; rmdir seabios-remote.tmp; \
+		$(GIT) clone $(SEABIOS_UPSTREAM_URL) seabios-remote.tmp; \
+		if [ "$(SEABIOS_UPSTREAM_TAG)" ]; then			\
+			cd seabios-remote.tmp;			\
+			$(GIT) branch -D dummy >/dev/null 2>&1 ||:; \
+			$(GIT) checkout -b dummy $(SEABIOS_UPSTREAM_TAG);	\
+			cd ..;					\
+		fi;						\
+		mv seabios-remote.tmp seabios-remote; \
+	fi; \
+	rm -f seabios-dir; \
+	ln -sf seabios-remote seabios-dir; \
+	cp seabios-config seabios-dir/.config;
+
 .PHONY: all
-all:
+all: $(SEABIOS_DIR)
 	@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!"; \
@@ -35,4 +55,7 @@ clean: subdirs-clean
 distclean: subdirs-distclean
 
 subdir-distclean-etherboot: .phony
-	$(MAKE) -C etherboot distclean
\ No newline at end of file
+	$(MAKE) -C etherboot distclean
+
+subdir-distclean-$(SEABIOS_DIR): .phony
+	rm -rf seabios-dir seabios-remote
diff -r ef27b472d4f3 tools/firmware/hvmloader/Makefile
--- a/tools/firmware/hvmloader/Makefile	Thu Sep 08 17:19:12 2011 +0000
+++ b/tools/firmware/hvmloader/Makefile	Thu Sep 08 17:29:50 2011 +0000
@@ -47,7 +47,7 @@ endif
 ifneq ($(SEABIOS_DIR),)
 OBJS += seabios.o
 CFLAGS += -DENABLE_SEABIOS
-SEABIOS_ROM := $(SEABIOS_DIR)/out/bios.bin
+SEABIOS_ROM := ../$(SEABIOS_DIR)/out/bios.bin
 endif
 
 STDVGA_ROM    := ../vgabios/VGABIOS-lgpl-latest.bin
diff -r ef27b472d4f3 tools/firmware/seabios-config
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tools/firmware/seabios-config	Thu Sep 08 17:29:50 2011 +0000
@@ -0,0 +1,73 @@
+#
+# 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

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH v2 3/4] Clone and build upstream Qemu by default
  2011-09-08 17:47 ` [PATCH v2 3/4] Clone and build upstream Qemu by default stefano.stabellini
@ 2011-09-08 17:56   ` Ian Campbell
  2011-09-09 10:18     ` Stefano Stabellini
  0 siblings, 1 reply; 17+ messages in thread
From: Ian Campbell @ 2011-09-08 17:56 UTC (permalink / raw)
  To: stefano.stabellini; +Cc: xen-devel, keir

On Thu, 2011-09-08 at 13:47 -0400, stefano.stabellini@eu.citrix.com
wrote:
> Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
> 
> diff -r 80ba2c7abbd2 Config.mk
> --- a/Config.mk	Thu Sep 08 16:59:19 2011 +0000
> +++ b/Config.mk	Thu Sep 08 17:18:48 2011 +0000
> @@ -192,6 +192,10 @@ else
>  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

Just a nit, but we should arrange to have a "proper" tree rather than
a /people/... one for the default tree. e.g. to allow automated testing
to automatically push etc.

> +QEMU_UPSTREAM_TAG ?= origin/xen-stable-0.15
> +
>  # 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
> diff -r 80ba2c7abbd2 Makefile
> --- a/Makefile	Thu Sep 08 16:59:19 2011 +0000
> +++ b/Makefile	Thu Sep 08 17:18:48 2011 +0000
> @@ -70,7 +70,7 @@ install-tools:
>  	$(MAKE) -C tools install
>  
>  ifeq ($(CONFIG_IOEMU),y)
> -install-tools: tools/qemu-xen-traditional-dir
> +install-tools: tools/qemu-xen-traditional-dir tools/qemu-xen-dir
>  endif
>  
>  .PHONY: install-kernels
> @@ -91,6 +91,9 @@ tools/qemu-xen-traditional-dir:
>  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: install-docs
>  install-docs:
>  	sh ./docs/check_pkgs && $(MAKE) -C docs install || true
> diff -r 80ba2c7abbd2 tools/Makefile
> --- a/tools/Makefile	Thu Sep 08 16:59:19 2011 +0000
> +++ b/tools/Makefile	Thu Sep 08 17:18:48 2011 +0000
> @@ -31,6 +31,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
>  endif
>  
>  SUBDIRS-y += xenpmd
> @@ -71,6 +72,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
>  
>  ifneq ($(XEN_COMPILE_ARCH),$(XEN_TARGET_ARCH))
>  IOEMU_CONFIGURE_CROSS ?= --cpu=$(XEN_TARGET_ARCH) \
> @@ -81,6 +83,9 @@ endif
>  qemu-xen-traditional-dir-find:
>  	$(XEN_ROOT)/tools/qemu-checkout.sh $(CONFIG_QEMU) $(QEMU_TAG) qemu-xen-traditional-dir
>  	
> +qemu-xen-dir-find:
> +	$(XEN_ROOT)/tools/qemu-checkout.sh $(QEMU_UPSTREAM_URL) $(QEMU_UPSTREAM_TAG) qemu-xen-dir
> +	
>  .PHONY: qemu-xen-traditional-dir-force-update
>  qemu-xen-traditional-dir-force-update:
>  	set -ex; \
> @@ -98,6 +103,14 @@ subdir-clean-qemu-xen-traditional-dir:
>  		$(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; \
> +	fi
> +
>  subdir-clean-debugger/gdbsx subdir-distclean-debugger/gdbsx: .phony
>  	$(MAKE) -C debugger/gdbsx clean
>  
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xensource.com
> http://lists.xensource.com/xen-devel

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH v2 4/4] Clone and build Seabios by default
  2011-09-08 17:47 ` [PATCH v2 4/4] Clone and build Seabios " stefano.stabellini
@ 2011-09-08 18:00   ` Ian Campbell
  2011-09-09 10:19     ` Stefano Stabellini
  0 siblings, 1 reply; 17+ messages in thread
From: Ian Campbell @ 2011-09-08 18:00 UTC (permalink / raw)
  To: stefano.stabellini; +Cc: xen-devel, keir

On Thu, 2011-09-08 at 13:47 -0400, stefano.stabellini@eu.citrix.com
wrote:
> Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
> 
> diff -r ef27b472d4f3 Config.mk
> --- a/Config.mk	Thu Sep 08 17:19:12 2011 +0000
> +++ b/Config.mk	Thu Sep 08 17:29:50 2011 +0000
> @@ -195,6 +195,8 @@ 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

I guess we should have a default tree on xenbits for this?

[...] 
> +$(SEABIOS_DIR):
> +	set -ex; \
> +	if [ ! -d seabios-remote ]; then \
> +		rm -rf seabios-remote seabios-remote.tmp; \
> +		mkdir seabios-remote.tmp; rmdir seabios-remote.tmp; \
> +		$(GIT) clone $(SEABIOS_UPSTREAM_URL) seabios-remote.tmp; \
> +		if [ "$(SEABIOS_UPSTREAM_TAG)" ]; then			\
> +			cd seabios-remote.tmp;			\
> +			$(GIT) branch -D dummy >/dev/null 2>&1 ||:; \
> +			$(GIT) checkout -b dummy $(SEABIOS_UPSTREAM_TAG);	\
> +			cd ..;					\
> +		fi;						\
> +		mv seabios-remote.tmp seabios-remote; \
> +	fi; \
> +	rm -f seabios-dir; \
> +	ln -sf seabios-remote seabios-dir; \
> +	cp seabios-config seabios-dir/.config;

This looks a lot like the qemu stuff which you only just moved into its
own script. Can we not share it?

> diff -r ef27b472d4f3 tools/firmware/hvmloader/Makefile
> --- a/tools/firmware/hvmloader/Makefile	Thu Sep 08 17:19:12 2011 +0000
> +++ b/tools/firmware/hvmloader/Makefile	Thu Sep 08 17:29:50 2011 +0000
> @@ -47,7 +47,7 @@ endif
>  ifneq ($(SEABIOS_DIR),)
>  OBJS += seabios.o
>  CFLAGS += -DENABLE_SEABIOS
> -SEABIOS_ROM := $(SEABIOS_DIR)/out/bios.bin
> +SEABIOS_ROM := ../$(SEABIOS_DIR)/out/bios.bin
>  endif
>  
>  STDVGA_ROM    := ../vgabios/VGABIOS-lgpl-latest.bin

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH v2 3/4] Clone and build upstream Qemu by default
  2011-09-08 17:56   ` Ian Campbell
@ 2011-09-09 10:18     ` Stefano Stabellini
  2011-09-09 13:59       ` Ian Campbell
  0 siblings, 1 reply; 17+ messages in thread
From: Stefano Stabellini @ 2011-09-09 10:18 UTC (permalink / raw)
  To: Ian Campbell; +Cc: xen-devel, keir, Stefano Stabellini

On Thu, 8 Sep 2011, Ian Campbell wrote:
> On Thu, 2011-09-08 at 13:47 -0400, stefano.stabellini@eu.citrix.com
> wrote:
> > Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
> > 
> > diff -r 80ba2c7abbd2 Config.mk
> > --- a/Config.mk	Thu Sep 08 16:59:19 2011 +0000
> > +++ b/Config.mk	Thu Sep 08 17:18:48 2011 +0000
> > @@ -192,6 +192,10 @@ else
> >  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
> 
> Just a nit, but we should arrange to have a "proper" tree rather than
> a /people/... one for the default tree. e.g. to allow automated testing
> to automatically push etc.

Like Linus said, thanks to distributed version control systems, it
doesn't actually matter where the repository is anymore :-)

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH v2 4/4] Clone and build Seabios by default
  2011-09-08 18:00   ` Ian Campbell
@ 2011-09-09 10:19     ` Stefano Stabellini
  2011-09-09 10:36       ` George Dunlap
  2011-09-09 14:13       ` Ian Campbell
  0 siblings, 2 replies; 17+ messages in thread
From: Stefano Stabellini @ 2011-09-09 10:19 UTC (permalink / raw)
  To: Ian Campbell; +Cc: xen-devel, keir, Stefano Stabellini

On Thu, 8 Sep 2011, Ian Campbell wrote:
> On Thu, 2011-09-08 at 13:47 -0400, stefano.stabellini@eu.citrix.com
> wrote:
> > Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
> > 
> > diff -r ef27b472d4f3 Config.mk
> > --- a/Config.mk	Thu Sep 08 17:19:12 2011 +0000
> > +++ b/Config.mk	Thu Sep 08 17:29:50 2011 +0000
> > @@ -195,6 +195,8 @@ 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
> 
> I guess we should have a default tree on xenbits for this?

I am not sure it is a good idea, after all we don't plan to fork it,
right?
It is the same thing as with ipxe: we just use the official repo.



> [...] 
> > +$(SEABIOS_DIR):
> > +	set -ex; \
> > +	if [ ! -d seabios-remote ]; then \
> > +		rm -rf seabios-remote seabios-remote.tmp; \
> > +		mkdir seabios-remote.tmp; rmdir seabios-remote.tmp; \
> > +		$(GIT) clone $(SEABIOS_UPSTREAM_URL) seabios-remote.tmp; \
> > +		if [ "$(SEABIOS_UPSTREAM_TAG)" ]; then			\
> > +			cd seabios-remote.tmp;			\
> > +			$(GIT) branch -D dummy >/dev/null 2>&1 ||:; \
> > +			$(GIT) checkout -b dummy $(SEABIOS_UPSTREAM_TAG);	\
> > +			cd ..;					\
> > +		fi;						\
> > +		mv seabios-remote.tmp seabios-remote; \
> > +	fi; \
> > +	rm -f seabios-dir; \
> > +	ln -sf seabios-remote seabios-dir; \
> > +	cp seabios-config seabios-dir/.config;
> 
> This looks a lot like the qemu stuff which you only just moved into its
> own script. Can we not share it?

Yep, I'll do that.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH v2 4/4] Clone and build Seabios by default
  2011-09-09 10:19     ` Stefano Stabellini
@ 2011-09-09 10:36       ` George Dunlap
  2011-09-09 10:46         ` Stefano Stabellini
  2011-09-09 14:13       ` Ian Campbell
  1 sibling, 1 reply; 17+ messages in thread
From: George Dunlap @ 2011-09-09 10:36 UTC (permalink / raw)
  To: Stefano Stabellini; +Cc: xen-devel, keir, Ian Campbell

On Fri, Sep 9, 2011 at 11:19 AM, Stefano Stabellini
<stefano.stabellini@eu.citrix.com> wrote:
> On Thu, 8 Sep 2011, Ian Campbell wrote:
>> On Thu, 2011-09-08 at 13:47 -0400, stefano.stabellini@eu.citrix.com
>> wrote:
>> > Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
>> >
>> > diff -r ef27b472d4f3 Config.mk
>> > --- a/Config.mk     Thu Sep 08 17:19:12 2011 +0000
>> > +++ b/Config.mk     Thu Sep 08 17:29:50 2011 +0000
>> > @@ -195,6 +195,8 @@ 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
>>
>> I guess we should have a default tree on xenbits for this?
>
> I am not sure it is a good idea, after all we don't plan to fork it,
> right?
> It is the same thing as with ipxe: we just use the official repo.

But that means that if the sites hosting ipxe or qemu go down, people
can't build Xen.  Keeping a copy on xen.org removes external
dependencies we don't have any control over.

>
>
>
>> [...]
>> > +$(SEABIOS_DIR):
>> > +   set -ex; \
>> > +   if [ ! -d seabios-remote ]; then \
>> > +           rm -rf seabios-remote seabios-remote.tmp; \
>> > +           mkdir seabios-remote.tmp; rmdir seabios-remote.tmp; \
>> > +           $(GIT) clone $(SEABIOS_UPSTREAM_URL) seabios-remote.tmp; \
>> > +           if [ "$(SEABIOS_UPSTREAM_TAG)" ]; then                  \
>> > +                   cd seabios-remote.tmp;                  \
>> > +                   $(GIT) branch -D dummy >/dev/null 2>&1 ||:; \
>> > +                   $(GIT) checkout -b dummy $(SEABIOS_UPSTREAM_TAG);       \
>> > +                   cd ..;                                  \
>> > +           fi;                                             \
>> > +           mv seabios-remote.tmp seabios-remote; \
>> > +   fi; \
>> > +   rm -f seabios-dir; \
>> > +   ln -sf seabios-remote seabios-dir; \
>> > +   cp seabios-config seabios-dir/.config;
>>
>> This looks a lot like the qemu stuff which you only just moved into its
>> own script. Can we not share it?
>
> Yep, I'll do that.
>
>
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xensource.com
> http://lists.xensource.com/xen-devel
>

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH v2 4/4] Clone and build Seabios by default
  2011-09-09 10:36       ` George Dunlap
@ 2011-09-09 10:46         ` Stefano Stabellini
  2011-09-09 11:23           ` Keir Fraser
  0 siblings, 1 reply; 17+ messages in thread
From: Stefano Stabellini @ 2011-09-09 10:46 UTC (permalink / raw)
  To: George Dunlap; +Cc: Ian Campbell, xen-devel, keir, Stefano Stabellini

[-- Attachment #1: Type: text/plain, Size: 1317 bytes --]

On Fri, 9 Sep 2011, George Dunlap wrote:
> On Fri, Sep 9, 2011 at 11:19 AM, Stefano Stabellini
> <stefano.stabellini@eu.citrix.com> wrote:
> > On Thu, 8 Sep 2011, Ian Campbell wrote:
> >> On Thu, 2011-09-08 at 13:47 -0400, stefano.stabellini@eu.citrix.com
> >> wrote:
> >> > Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
> >> >
> >> > diff -r ef27b472d4f3 Config.mk
> >> > --- a/Config.mk     Thu Sep 08 17:19:12 2011 +0000
> >> > +++ b/Config.mk     Thu Sep 08 17:29:50 2011 +0000
> >> > @@ -195,6 +195,8 @@ 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
> >>
> >> I guess we should have a default tree on xenbits for this?
> >
> > I am not sure it is a good idea, after all we don't plan to fork it,
> > right?
> > It is the same thing as with ipxe: we just use the official repo.
> 
> But that means that if the sites hosting ipxe or qemu go down, people
> can't build Xen.  Keeping a copy on xen.org removes external
> dependencies we don't have any control over.

AKA single point of failure?

[-- Attachment #2: Type: text/plain, Size: 138 bytes --]

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH v2 4/4] Clone and build Seabios by default
  2011-09-09 10:46         ` Stefano Stabellini
@ 2011-09-09 11:23           ` Keir Fraser
  0 siblings, 0 replies; 17+ messages in thread
From: Keir Fraser @ 2011-09-09 11:23 UTC (permalink / raw)
  To: Stefano Stabellini, George Dunlap; +Cc: Ian Campbell, xen-devel, keir

On 09/09/2011 11:46, "Stefano Stabellini" <stefano.stabellini@eu.citrix.com>
wrote:

>> But that means that if the sites hosting ipxe or qemu go down, people
>> can't build Xen.  Keeping a copy on xen.org removes external
>> dependencies we don't have any control over.
> 
> AKA single point of failure?

Better than multiple independent points of failure.

However, we already depend on the upstream ipxe site. Changing over to all
downloads from a single site under our control would be a separate issue and
patch, imo.

 -- Keir

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH v2 3/4] Clone and build upstream Qemu by default
  2011-09-09 10:18     ` Stefano Stabellini
@ 2011-09-09 13:59       ` Ian Campbell
  2011-09-09 14:31         ` Ian Campbell
  2011-09-09 16:43         ` Stefano Stabellini
  0 siblings, 2 replies; 17+ messages in thread
From: Ian Campbell @ 2011-09-09 13:59 UTC (permalink / raw)
  To: Stefano Stabellini; +Cc: xen-devel, keir

On Fri, 2011-09-09 at 06:18 -0400, Stefano Stabellini wrote:
> On Thu, 8 Sep 2011, Ian Campbell wrote:
> > On Thu, 2011-09-08 at 13:47 -0400, stefano.stabellini@eu.citrix.com
> > wrote:
> > > Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
> > > 
> > > diff -r 80ba2c7abbd2 Config.mk
> > > --- a/Config.mk	Thu Sep 08 16:59:19 2011 +0000
> > > +++ b/Config.mk	Thu Sep 08 17:18:48 2011 +0000
> > > @@ -192,6 +192,10 @@ else
> > >  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
> > 
> > Just a nit, but we should arrange to have a "proper" tree rather than
> > a /people/... one for the default tree. e.g. to allow automated testing
> > to automatically push etc.
> 
> Like Linus said, thanks to distributed version control systems, it
> doesn't actually matter where the repository is anymore :-)

In technical terms perhaps not but for practical reasons we want the
default tree which we point people to live next to all the other default
trees, otherwise they won't be able to reliably find it the sea of suchs
trees which we will eventually have under /people/. Linus' tree being
just one of a thousand trees under git.kernel.org was always a pain
IMHO.

We also want to test and automatically push a tested branch like we do
for the other trees and we really don't want to give the test system
access to your (or anyone else's) xenbits account.

With the number of trees which we have now we should maybe consider
putting each branch in a subdir:
	[/staging]/xen-unstable/xen.hg
	                       /qemu-xen.hg
                               /qemu.git
		               /seabios.git 
	[/staging]/xen-4.2/xen.hg
	                  /...

? (staging could also go after the dir I suppose)

Ian.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH v2 4/4] Clone and build Seabios by default
  2011-09-09 10:19     ` Stefano Stabellini
  2011-09-09 10:36       ` George Dunlap
@ 2011-09-09 14:13       ` Ian Campbell
  2011-09-09 14:32         ` Stefano Stabellini
  1 sibling, 1 reply; 17+ messages in thread
From: Ian Campbell @ 2011-09-09 14:13 UTC (permalink / raw)
  To: Stefano Stabellini; +Cc: xen-devel, keir

On Fri, 2011-09-09 at 06:19 -0400, Stefano Stabellini wrote:
> On Thu, 8 Sep 2011, Ian Campbell wrote:
> > On Thu, 2011-09-08 at 13:47 -0400, stefano.stabellini@eu.citrix.com
> > wrote:
> > > Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
> > > 
> > > diff -r ef27b472d4f3 Config.mk
> > > --- a/Config.mk	Thu Sep 08 17:19:12 2011 +0000
> > > +++ b/Config.mk	Thu Sep 08 17:29:50 2011 +0000
> > > @@ -195,6 +195,8 @@ 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
> > 
> > I guess we should have a default tree on xenbits for this?
> 
> I am not sure it is a good idea, after all we don't plan to fork it,
> right?

Planning not to fork is not the same as not forking.

For example, imagine a bug (or security issue) is discovered in seabios
and we want to backport it to our (by then) xen-4.2-testing branch. Do
we take all the other updates to seabios trunk into our stable branch to
get the one we want or do we ask them to push it to a branch just for
us? Or do we now need to scrabble to setup trees, update the links and
retest etc while trying to get an (perhaps critical) update out? Far
better to just start off hosting a tree on xenbits, even if it doesn't
diverge at all.

> It is the same thing as with ipxe: we just use the official repo.

That's a bad thing, for the same reasons.

Ian.

> 
> 
> 
> > [...] 
> > > +$(SEABIOS_DIR):
> > > +	set -ex; \
> > > +	if [ ! -d seabios-remote ]; then \
> > > +		rm -rf seabios-remote seabios-remote.tmp; \
> > > +		mkdir seabios-remote.tmp; rmdir seabios-remote.tmp; \
> > > +		$(GIT) clone $(SEABIOS_UPSTREAM_URL) seabios-remote.tmp; \
> > > +		if [ "$(SEABIOS_UPSTREAM_TAG)" ]; then			\
> > > +			cd seabios-remote.tmp;			\
> > > +			$(GIT) branch -D dummy >/dev/null 2>&1 ||:; \
> > > +			$(GIT) checkout -b dummy $(SEABIOS_UPSTREAM_TAG);	\
> > > +			cd ..;					\
> > > +		fi;						\
> > > +		mv seabios-remote.tmp seabios-remote; \
> > > +	fi; \
> > > +	rm -f seabios-dir; \
> > > +	ln -sf seabios-remote seabios-dir; \
> > > +	cp seabios-config seabios-dir/.config;
> > 
> > This looks a lot like the qemu stuff which you only just moved into its
> > own script. Can we not share it?
> 
> Yep, I'll do that.
> 
> 

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH v2 3/4] Clone and build upstream Qemu by default
  2011-09-09 13:59       ` Ian Campbell
@ 2011-09-09 14:31         ` Ian Campbell
  2011-09-09 16:43         ` Stefano Stabellini
  1 sibling, 0 replies; 17+ messages in thread
From: Ian Campbell @ 2011-09-09 14:31 UTC (permalink / raw)
  To: Stefano Stabellini; +Cc: xen-devel, keir

On Fri, 2011-09-09 at 09:59 -0400, Ian Campbell wrote:
> 
> With the number of trees which we have now we should maybe consider
> putting each branch in a subdir:
>         [/staging]/xen-unstable/xen.hg
>                                /qemu-xen.hg
>                                /qemu.git
>                                /seabios.git 
>         [/staging]/xen-4.2/xen.hg
>                           /...
> 
> ? (staging could also go after the dir I suppose) 

Or we could make use of git and hg's internal branching capabilities I
guess.

Ian.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH v2 4/4] Clone and build Seabios by default
  2011-09-09 14:13       ` Ian Campbell
@ 2011-09-09 14:32         ` Stefano Stabellini
  0 siblings, 0 replies; 17+ messages in thread
From: Stefano Stabellini @ 2011-09-09 14:32 UTC (permalink / raw)
  To: Ian Campbell; +Cc: xen-devel, keir, Stefano Stabellini

On Fri, 9 Sep 2011, Ian Campbell wrote:
> On Fri, 2011-09-09 at 06:19 -0400, Stefano Stabellini wrote:
> > On Thu, 8 Sep 2011, Ian Campbell wrote:
> > > On Thu, 2011-09-08 at 13:47 -0400, stefano.stabellini@eu.citrix.com
> > > wrote:
> > > > Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
> > > > 
> > > > diff -r ef27b472d4f3 Config.mk
> > > > --- a/Config.mk	Thu Sep 08 17:19:12 2011 +0000
> > > > +++ b/Config.mk	Thu Sep 08 17:29:50 2011 +0000
> > > > @@ -195,6 +195,8 @@ 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
> > > 
> > > I guess we should have a default tree on xenbits for this?
> > 
> > I am not sure it is a good idea, after all we don't plan to fork it,
> > right?
> 
> Planning not to fork is not the same as not forking.
> 
> For example, imagine a bug (or security issue) is discovered in seabios
> and we want to backport it to our (by then) xen-4.2-testing branch. Do
> we take all the other updates to seabios trunk into our stable branch to
> get the one we want or do we ask them to push it to a branch just for
> us? Or do we now need to scrabble to setup trees, update the links and
> retest etc while trying to get an (perhaps critical) update out? Far
> better to just start off hosting a tree on xenbits, even if it doesn't
> diverge at all.
> 

Seabios already provides two stable branches: if a security issue is
discovered, the Seabios guys will backport the fix to their stable
branches and we just need to update the TAG (or set the TAG to
0.6.1-stable to begin with).

The only problem is that no stable branches have xen support yet.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH v2 3/4] Clone and build upstream Qemu by default
  2011-09-09 13:59       ` Ian Campbell
  2011-09-09 14:31         ` Ian Campbell
@ 2011-09-09 16:43         ` Stefano Stabellini
  2011-09-09 17:18           ` Ian Campbell
  1 sibling, 1 reply; 17+ messages in thread
From: Stefano Stabellini @ 2011-09-09 16:43 UTC (permalink / raw)
  To: Ian Campbell; +Cc: xen-devel, keir, Stefano Stabellini

On Fri, 9 Sep 2011, Ian Campbell wrote:
> In technical terms perhaps not but for practical reasons we want the
> default tree which we point people to live next to all the other default
> trees, otherwise they won't be able to reliably find it the sea of suchs
> trees which we will eventually have under /people/. Linus' tree being
> just one of a thousand trees under git.kernel.org was always a pain
> IMHO.
> 
> We also want to test and automatically push a tested branch like we do
> for the other trees and we really don't want to give the test system
> access to your (or anyone else's) xenbits account.
> 
> With the number of trees which we have now we should maybe consider
> putting each branch in a subdir:
> 	[/staging]/xen-unstable/xen.hg
> 	                       /qemu-xen.hg
>                                /qemu.git
> 		               /seabios.git 
> 	[/staging]/xen-4.2/xen.hg
> 	                  /...
> 
> ? (staging could also go after the dir I suppose)

Fair enough. However it shouldn't block these patches.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH v2 3/4] Clone and build upstream Qemu by default
  2011-09-09 16:43         ` Stefano Stabellini
@ 2011-09-09 17:18           ` Ian Campbell
  0 siblings, 0 replies; 17+ messages in thread
From: Ian Campbell @ 2011-09-09 17:18 UTC (permalink / raw)
  To: Stefano Stabellini; +Cc: xen-devel, keir

On Fri, 2011-09-09 at 12:43 -0400, Stefano Stabellini wrote:
> On Fri, 9 Sep 2011, Ian Campbell wrote:

> > With the number of trees which we have now we should maybe consider
> > putting each branch in a subdir:
[...]
> 
> Fair enough. However it shouldn't block these patches.

Absolutely, I was just pondering ;-)

Ian.

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2011-09-09 17:18 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-09-08 17:47 [PATCH v2 1/4] Move the ioemu-dir-find shell script to an external file stefano.stabellini
2011-09-08 17:47 ` [PATCH v2 2/4] Rename ioemu-dir as qemu-xen-traditional-dir stefano.stabellini
2011-09-08 17:47 ` [PATCH v2 3/4] Clone and build upstream Qemu by default stefano.stabellini
2011-09-08 17:56   ` Ian Campbell
2011-09-09 10:18     ` Stefano Stabellini
2011-09-09 13:59       ` Ian Campbell
2011-09-09 14:31         ` Ian Campbell
2011-09-09 16:43         ` Stefano Stabellini
2011-09-09 17:18           ` Ian Campbell
2011-09-08 17:47 ` [PATCH v2 4/4] Clone and build Seabios " stefano.stabellini
2011-09-08 18:00   ` Ian Campbell
2011-09-09 10:19     ` Stefano Stabellini
2011-09-09 10:36       ` George Dunlap
2011-09-09 10:46         ` Stefano Stabellini
2011-09-09 11:23           ` Keir Fraser
2011-09-09 14:13       ` Ian Campbell
2011-09-09 14:32         ` Stefano Stabellini

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.