[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-3.4-testing] x86: move trampoline location
# HG changeset patch # User Keir Fraser <keir.fraser@xxxxxxxxxx> # Date 1265794206 0 # Node ID b8aed0b67f22b3c81dd14fc59f1de7afa82df425 # Parent 407d29f3d20e0d2c46352423840282e477a3b8ce x86: move trampoline location A partner of ours is reporting boot failures (Xen not even emitting a single message) over iSCSI on new (UEFI based) systems. After pointing at their BIOS initially I finally remembered to take a look at the memory map a native kernel booted this way see - and voila, the BIOS reports memory starting at 0x8d000 as reserved. Xen, however, places about 12k of (trampoline) data at 0x8c000. For now, move the trampolien down by 4kB to 0x88000. Later we may choose the location dynamically based on E820 information, if this proves to be an ongoing problem. One thing this patch enforces in any case is a single point of definition for the hard coded location, so that at least adjusting it won't require more than a single line change in the future. Signed-off-by: Jan Beulich <jbeulich@xxxxxxxxxx> xen-unstable changeset: 20920:83a6621b91bf xen-unstable date: Wed Feb 10 09:20:56 2010 +0000 --- xen/arch/x86/boot/Makefile | 6 ++++-- xen/arch/x86/boot/build32.mk | 4 +++- xen/include/asm-x86/config.h | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff -r 407d29f3d20e -r b8aed0b67f22 xen/arch/x86/boot/Makefile --- a/xen/arch/x86/boot/Makefile Wed Feb 10 09:28:44 2010 +0000 +++ b/xen/arch/x86/boot/Makefile Wed Feb 10 09:30:06 2010 +0000 @@ -2,6 +2,8 @@ obj-y += head.o head.o: reloc.S -# NB. BOOT_TRAMPOLINE == 0x8c000 +BOOT_TRAMPOLINE := $(shell sed -n 's,^\#define[[:space:]]\+BOOT_TRAMPOLINE[[:space:]]\+,,p' $(BASEDIR)/include/asm-x86/config.h) %.S: %.c - RELOC=0x8c000 $(MAKE) -f build32.mk $@ + RELOC=$(BOOT_TRAMPOLINE) $(MAKE) -f build32.mk $@ + +reloc.S: $(BASEDIR)/include/asm-x86/config.h diff -r 407d29f3d20e -r b8aed0b67f22 xen/arch/x86/boot/build32.mk --- a/xen/arch/x86/boot/build32.mk Wed Feb 10 09:28:44 2010 +0000 +++ b/xen/arch/x86/boot/build32.mk Wed Feb 10 09:30:06 2010 +0000 @@ -19,7 +19,9 @@ CFLAGS += -Werror -fno-builtin -msoft-fl $(OBJCOPY) -O binary $< $@ %.lnk: %.o - $(LD) $(LDFLAGS_DIRECT) -N -Ttext 0x8c000 -o $@ $< + $(LD) $(LDFLAGS_DIRECT) -N -Ttext $(RELOC) -o $@ $< %.o: %.c $(CC) $(CFLAGS) -c $< -o $@ + +reloc.o: $(BASEDIR)/include/asm-x86/config.h diff -r 407d29f3d20e -r b8aed0b67f22 xen/include/asm-x86/config.h --- a/xen/include/asm-x86/config.h Wed Feb 10 09:28:44 2010 +0000 +++ b/xen/include/asm-x86/config.h Wed Feb 10 09:30:06 2010 +0000 @@ -96,7 +96,7 @@ /* Primary stack is restricted to 8kB by guard pages. */ #define PRIMARY_STACK_SIZE 8192 -#define BOOT_TRAMPOLINE 0x8c000 +#define BOOT_TRAMPOLINE 0x88000 #define bootsym_phys(sym) \ (((unsigned long)&(sym)-(unsigned long)&trampoline_start)+BOOT_TRAMPOLINE) #define bootsym(sym) \ _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |