1
0
Fork 0
alistair23-linux/arch/um/kernel
Jeff Dike 54ae36f24b uml: fix stub address calculations
The calculation of CONFIG_STUB_CODE and CONFIG_STUB_DATA didn't take into
account anything but 3G/1G and 2G/2G, leaving the other vmsplits out in the
cold.

I'd rather not duplicate the four known host vmsplit cases for each of these
symbols.  I'd also like to calculate them based on the highest userspace
address.

The Kconfig language seems not to allow calculation of hex constants, so I
moved this to as-layout.h.  CONFIG_STUB_CODE, CONFIG_STUB_DATA, and
CONFIG_STUB_START are now gone.  In their place are STUB_CODE, STUB_DATA, and
STUB_START in as-layout.h.

i386 and x86_64 seem to differ as to whether an unadorned constant is an int
or a long, so I cast them to unsigned long so they can be printed
consistently.  However, they are also used in stub.S, where C types don't work
so well.  So, there are ASM_ versions of these constants for use in stub.S.  I
also ifdef-ed the non-asm-friendly portion of as-layout.h.

With this in place, most of the rest of this patch is changing CONFIG_STUB_*
to STUB_*, except in stub.S, where they are changed to ASM_STUB_*.

defconfig has the old symbols deleted.

I also print these addresses out in case there is any problem mapping them on
the host.

The two stub.S files had some trailing whitespace, so that is cleaned up here.

[akpm@linux-foundation.org: coding-style fixes]
Signed-off-by: Jeff Dike <jdike@linux.intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-10-16 09:43:09 -07:00
..
skas uml: fix stub address calculations 2007-10-16 09:43:09 -07:00
Makefile uml: style fixes pass 1 2007-10-16 09:43:05 -07:00
asm-offsets.c [PATCH] uml: fix missing KBUILD_BASENAME 2006-01-11 18:42:09 -08:00
config.c.in Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
dyn.lds.S uml: throw out CONFIG_MODE_TT 2007-10-16 09:43:05 -07:00
exec.c uml: fix stub address calculations 2007-10-16 09:43:09 -07:00
exitcode.c uml: get declaration of simple_strtoul 2007-06-08 17:23:33 -07:00
gmon_syms.c [PATCH] uml: fix gcov support 2006-09-27 08:26:16 -07:00
gprof_syms.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
init_task.c uml: style fixes pass 1 2007-10-16 09:43:05 -07:00
initrd.c uml: rename os_{read_write}_file_k back to os_{read_write}_file 2007-05-07 12:13:03 -07:00
irq.c uml: style fixes pass 3 2007-10-16 09:43:05 -07:00
ksyms.c uml: GENERIC_TIME support 2007-10-16 09:43:08 -07:00
mem.c uml: get rid of do_longjmp 2007-10-16 09:43:05 -07:00
physmem.c uml: userspace files should call libc directly 2007-10-16 09:43:06 -07:00
process.c uml: eliminate interrupts in the idle loop 2007-10-16 09:43:08 -07:00
ptrace.c uml: style fixes in FP code 2007-10-16 09:43:07 -07:00
reboot.c uml: fold mmu_context_skas into mm_context 2007-10-16 09:43:06 -07:00
sigio.c uml: rename os_{read_write}_file_k back to os_{read_write}_file 2007-05-07 12:13:03 -07:00
signal.c uml: style fixes pass 3 2007-10-16 09:43:05 -07:00
smp.c uml: style fixes pass 1 2007-10-16 09:43:05 -07:00
syscall.c uml: style fixes pass 3 2007-10-16 09:43:05 -07:00
sysrq.c uml: remove user_util.h 2007-05-07 12:13:01 -07:00
time.c uml: use *SEC_PER_*SEC constants 2007-10-16 09:43:08 -07:00
tlb.c uml: fix stub address calculations 2007-10-16 09:43:09 -07:00
trap.c uml: get rid of do_longjmp 2007-10-16 09:43:05 -07:00
uaccess.c uml: get rid of do_longjmp 2007-10-16 09:43:05 -07:00
um_arch.c uml: fix stub address calculations 2007-10-16 09:43:09 -07:00
umid.c [PATCH] uml: umid tidying 2007-02-11 10:51:24 -08:00
uml.lds.S uml: throw out CONFIG_MODE_TT 2007-10-16 09:43:05 -07:00
vmlinux.lds.S [PATCH] uml: tidy biarch gcc support 2006-07-14 21:53:52 -07:00