2004-09-23 01:22:15

by Jeff Dike

[permalink] [raw]
Subject: [PATCH] UML - Allow UML to load in the normal location

This makes UML load at 0x8048000 rather than 0xa0000000 when
CONFIG_MODE_SKAS is on and CONFIG_MODE_TT is off. This will make it
more valgrind-friendly, and also allow much greater physical memory
sizes without needing to use highmem.

Signed-off-by: Paolo 'Blaisorblade' Giarrusso <[email protected]>
Signed-off-by: Jeff Dike <[email protected]>

Index: linux-2.6.9-rc2-mm1-orig/arch/um/Makefile
===================================================================
--- linux-2.6.9-rc2-mm1-orig.orig/arch/um/Makefile 2004-09-22 20:00:24.000000000 -0400
+++ linux-2.6.9-rc2-mm1-orig/arch/um/Makefile 2004-09-22 20:17:45.000000000 -0400
@@ -109,8 +109,12 @@
CONFIG_KERNEL_STACK_ORDER ?= 2
STACK_SIZE := $(shell echo $$[ 4096 * (1 << $(CONFIG_KERNEL_STACK_ORDER)) ] )

+ifndef START
+ START = $$(($(TOP_ADDR) - $(SIZE)))
+endif
+
CPPFLAGS_vmlinux.lds = $(shell echo -U$(SUBARCH) \
- -DSTART=$$(($(TOP_ADDR) - $(SIZE))) -DELF_ARCH=$(ELF_ARCH) \
+ -DSTART=$(START) -DELF_ARCH=$(ELF_ARCH) \
-DELF_FORMAT=\"$(ELF_FORMAT)\" $(CPP_MODE_TT) \
-DKERNEL_STACK_SIZE=$(STACK_SIZE))

Index: linux-2.6.9-rc2-mm1-orig/arch/um/Makefile-i386
===================================================================
--- linux-2.6.9-rc2-mm1-orig.orig/arch/um/Makefile-i386 2004-09-22 20:00:24.000000000 -0400
+++ linux-2.6.9-rc2-mm1-orig/arch/um/Makefile-i386 2004-09-22 20:17:45.000000000 -0400
@@ -4,6 +4,12 @@
TOP_ADDR = 0xc0000000
endif

+ifeq ($(CONFIG_MODE_SKAS),y)
+ ifneq ($(CONFIG_MODE_TT),y)
+ START = 0x8048000
+ endif
+endif
+
CFLAGS += -U__$(SUBARCH)__ -U$(SUBARCH)

ifneq ($(CONFIG_GPROF),y)