ia64/xen-unstable

view buildconfigs/mk.linux-2.6-xen @ 8741:da6297243495

There is a known "xm console" issue related with VMX. When "serial" is
enabled in script and no once uses "xm console" to read the console,
VMX boting will hang due to the buffer is full.
I added a "select" before "write". If it could not be written,
unix_write will Return immediately and it will not block the VMX
booting. With this fix, we can make VMX's serial enable by default.

Signed-off-by: Yu Ping <ping.y.yu@intel.com>

Modified to patch xmexample.hvm. Put through xenrt on a VMX box.

Signed-off-by: James Bulpin <james@xensource.com>
author jrb44@plym.cl.cam.ac.uk
date Thu Feb 02 19:15:22 2006 +0100 (2006-02-02)
parents 5a63f675107c
children 2494b4e00cbb
line source
2 OS = linux
4 LINUX_SERIES = 2.6
5 LINUX_VER = 2.6.15
7 EXTRAVERSION ?= xen
9 LINUX_DIR = $(OS)-$(LINUX_VER)-$(EXTRAVERSION)
11 include buildconfigs/Rules.mk
13 .PHONY: build clean delete
15 # The real action starts here!
16 build: $(LINUX_DIR)/include/linux/autoconf.h
17 if grep "^CONFIG_MODULES=" $(LINUX_DIR)/.config ; then \
18 $(MAKE) -C $(LINUX_DIR) ARCH=$(LINUX_ARCH) modules ; \
19 $(MAKE) -C $(LINUX_DIR) ARCH=$(LINUX_ARCH) INSTALL_MOD_PATH=$(DESTDIR) modules_install ; \
20 fi
21 $(MAKE) -C $(LINUX_DIR) ARCH=$(LINUX_ARCH) INSTALL_PATH=$(DESTDIR) install
23 $(LINUX_DIR)/include/linux/autoconf.h: ref-$(OS)-$(LINUX_VER)/.valid-ref
24 rm -rf $(LINUX_DIR)
25 cp -al $(<D) $(LINUX_DIR)
26 # Apply arch-xen patches
27 ( cd linux-$(LINUX_SERIES)-xen-sparse ; \
28 LINUX_ARCH=$(LINUX_ARCH) ./mkbuildtree ../$(LINUX_DIR) )
29 # Re-use config from install dir if one exits else use default config
30 CONFIG_VERSION=$$(sed -ne 's/^EXTRAVERSION = //p' $(LINUX_DIR)/Makefile); \
31 [ -r $(DESTDIR)/boot/config-$(LINUX_VER)$$CONFIG_VERSION-$(EXTRAVERSION) ] && \
32 cp $(DESTDIR)/boot/config-$(LINUX_VER)$$CONFIG_VERSION-$(EXTRAVERSION) $(LINUX_DIR)/.config \
33 || cp buildconfigs/linux-defconfig_$(EXTRAVERSION)_$(XEN_TARGET_ARCH)$(XEN_SYSTYPE) \
34 $(LINUX_DIR)/.config
35 # See if we need to munge config to enable PAE
36 $(MAKE) CONFIG_FILE=$(LINUX_DIR)/.config -f buildconfigs/Rules.mk config-update-pae
37 # Patch kernel Makefile to set EXTRAVERSION
38 ( cd $(LINUX_DIR) ; \
39 sed -e 's/^EXTRAVERSION.*/&$$(XENGUEST)\nXENGUEST = -$(EXTRAVERSION)/' Makefile >Mk.tmp ; \
40 rm -f Makefile ; mv Mk.tmp Makefile )
41 $(MAKE) -C $(LINUX_DIR) ARCH=$(LINUX_ARCH) oldconfig
43 prep: $(LINUX_DIR)/include/linux/autoconf.h
45 config: CONFIGMODE = menuconfig
46 config: $(LINUX_DIR)/include/linux/autoconf.h
47 $(MAKE) -C $(LINUX_DIR) ARCH=$(LINUX_ARCH) $(CONFIGMODE)
49 clean::
50 $(MAKE) -C $(LINUX_DIR) ARCH=$(LINUX_ARCH) clean
52 delete:
53 rm -rf tmp-$(OS)-$(LINUX_VER) $(LINUX_DIR)