mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-13 00:20:06 +00:00
[PATCH] uml: allow finer tuning for host VMSPLIT setting
Now that various memory splits are enabled, add a config option allowing the user to compile UML for its need - HOST_2G_2G allowed to choose either 3G/1G or 2G/2G, and enabling it reduced the usable virtual memory. Detecting this at run time should be implemented in the future, but we must make the stop-gap measure work well enough (this is valid in _many_ cases). Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it> Cc: Jeff Dike <jdike@addtoit.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
ca316fcf64
commit
c21be1c9c1
@ -16,23 +16,42 @@ config SEMAPHORE_SLEEPERS
|
|||||||
bool
|
bool
|
||||||
default y
|
default y
|
||||||
|
|
||||||
config HOST_2G_2G
|
choice
|
||||||
bool "2G/2G host address space split"
|
prompt "Host memory split"
|
||||||
default n
|
default HOST_VMSPLIT_3G
|
||||||
help
|
---help---
|
||||||
This is needed when the host on which you run has a 2G/2G memory
|
This is needed when the host kernel on which you run has a non-default
|
||||||
split, instead of the customary 3G/1G.
|
(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.
|
||||||
|
|
||||||
Note that to enable such a host
|
It can be enabled on recent (>=2.6.16-rc2) vanilla kernels via
|
||||||
configuration, which makes sense only in some cases, you need special
|
CONFIG_VM_SPLIT_*, or on previous kernels with special patches (-ck
|
||||||
host patches.
|
patchset by Con Kolivas, or other ones) - option names match closely the
|
||||||
|
host CONFIG_VM_SPLIT_* ones.
|
||||||
|
|
||||||
So, if you do not know what to do here, say 'N'.
|
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
|
config TOP_ADDR
|
||||||
hex
|
hex
|
||||||
default 0xc0000000 if !HOST_2G_2G
|
default 0xB0000000 if HOST_VMSPLIT_3G_OPT
|
||||||
default 0x80000000 if HOST_2G_2G
|
default 0x78000000 if HOST_VMSPLIT_2G
|
||||||
|
default 0x40000000 if HOST_VMSPLIT_1G
|
||||||
|
default 0xC0000000
|
||||||
|
|
||||||
config 3_LEVEL_PGTABLES
|
config 3_LEVEL_PGTABLES
|
||||||
bool "Three-level pagetables (EXPERIMENTAL)"
|
bool "Three-level pagetables (EXPERIMENTAL)"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user