mirror of
https://github.com/FEX-Emu/linux.git
synced 2024-12-15 13:22:55 +00:00
fe33f6f152
This fixes UML on hosts with non-standard VM splits. We had changed the config variable that controls UML behavior on such hosts, but not propogated the change everywhere. In particular, the values of STUB_CODE and STUB_DATA relied on the old variable. I also reformatted the HOST_VMSPLIT_3G help to make it more standard. Spotted by uml@flonatel.org. Signed-off-by: Jeff Dike <jdike@addtoit.com> Cc: Blaisorblade <blaisorblade@yahoo.it> Cc: Pravin <shindepravin@gmail.com> Cc: <uml@flonatel.org> Cc: <stable@kernel.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
94 lines
2.2 KiB
Plaintext
94 lines
2.2 KiB
Plaintext
menu "Host processor type and features"
|
|
|
|
source "arch/i386/Kconfig.cpu"
|
|
|
|
endmenu
|
|
|
|
config UML_X86
|
|
bool
|
|
default y
|
|
|
|
config 64BIT
|
|
bool
|
|
default n
|
|
|
|
config SEMAPHORE_SLEEPERS
|
|
bool
|
|
default y
|
|
|
|
choice
|
|
prompt "Host memory split"
|
|
default HOST_VMSPLIT_3G
|
|
help
|
|
This is needed when the host kernel on which you run has a non-default
|
|
(like 2G/2G) memory split, instead of the customary 3G/1G. If you did
|
|
not recompile your own kernel but use the default distro's one, you can
|
|
safely accept the "Default split" option.
|
|
|
|
It can be enabled on recent (>=2.6.16-rc2) vanilla kernels via
|
|
CONFIG_VM_SPLIT_*, or on previous kernels with special patches (-ck
|
|
patchset by Con Kolivas, or other ones) - option names match closely the
|
|
host CONFIG_VM_SPLIT_* ones.
|
|
|
|
A lower setting (where 1G/3G is lowest and 3G/1G is higher) will
|
|
tolerate even more "normal" host kernels, but an higher setting will be
|
|
stricter.
|
|
|
|
So, if you do not know what to do here, say 'Default split'.
|
|
|
|
config HOST_VMSPLIT_3G
|
|
bool "Default split (3G/1G user/kernel host split)"
|
|
config HOST_VMSPLIT_3G_OPT
|
|
bool "3G/1G user/kernel host split (for full 1G low memory)"
|
|
config HOST_VMSPLIT_2G
|
|
bool "2G/2G user/kernel host split"
|
|
config HOST_VMSPLIT_1G
|
|
bool "1G/3G user/kernel host split"
|
|
endchoice
|
|
|
|
config TOP_ADDR
|
|
hex
|
|
default 0xB0000000 if HOST_VMSPLIT_3G_OPT
|
|
default 0x78000000 if HOST_VMSPLIT_2G
|
|
default 0x40000000 if HOST_VMSPLIT_1G
|
|
default 0xC0000000
|
|
|
|
config 3_LEVEL_PGTABLES
|
|
bool "Three-level pagetables (EXPERIMENTAL)"
|
|
default n
|
|
depends on EXPERIMENTAL
|
|
help
|
|
Three-level pagetables will let UML have more than 4G of physical
|
|
memory. All the memory that can't be mapped directly will be treated
|
|
as high memory.
|
|
|
|
However, this it experimental on 32-bit architectures, so if unsure say
|
|
N (on x86-64 it's automatically enabled, instead, as it's safe there).
|
|
|
|
config STUB_CODE
|
|
hex
|
|
default 0xbfffe000 if !HOST_VMSPLIT_2G
|
|
default 0x7fffe000 if HOST_VMSPLIT_2G
|
|
|
|
config STUB_DATA
|
|
hex
|
|
default 0xbffff000 if !HOST_VMSPLIT_2G
|
|
default 0x7ffff000 if HOST_VMSPLIT_2G
|
|
|
|
config STUB_START
|
|
hex
|
|
default STUB_CODE
|
|
|
|
config ARCH_HAS_SC_SIGNALS
|
|
bool
|
|
default y
|
|
|
|
config ARCH_REUSE_HOST_VSYSCALL_AREA
|
|
bool
|
|
default y
|
|
|
|
config GENERIC_HWEIGHT
|
|
bool
|
|
default y
|
|
|