aboutsummaryrefslogtreecommitdiffstats
path: root/arch/um/Kconfig
diff options
context:
space:
mode:
authorJeff Dike <jdike@addtoit.com>2007-10-16 04:26:50 -0400
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-10-16 12:43:05 -0400
commit42fda66387daa53538ae13a2c858396aaf037158 (patch)
tree77955a91a958fde7be47cb0ff23ac9e1248217db /arch/um/Kconfig
parenta1ff5878d2628bbe1e42821c024c96f48318f683 (diff)
uml: throw out CONFIG_MODE_TT
This patchset throws out tt mode, which has been non-functional for a while. This is done in phases, interspersed with code cleanups on the affected files. The removal is done as follows: remove all code, config options, and files which depend on CONFIG_MODE_TT get rid of the CHOOSE_MODE macro, which decided whether to call tt-mode or skas-mode code, and replace invocations with their skas portions replace all now-trivial procedures with their skas equivalents There are now a bunch of now-redundant pieces of data structures, including mode-specific pieces of the thread structure, pt_regs, and mm_context. These are all replaced with their skas-specific contents. As part of the ongoing style compliance project, I made a style pass over all files that were changed. There are three such patches, one for each phase, covering the files affected by that phase but no later ones. I noticed that we weren't freeing the LDT state associated with a process when it exited, so that's fixed in one of the later patches. The last patch is a tidying patch which I've had for a while, but which caused inexplicable crashes under tt mode. Since that is no longer a problem, this can now go in. This patch: Start getting rid of tt mode support. This patch throws out CONFIG_MODE_TT and all config options, code, and files which depend on it. CONFIG_MODE_SKAS is gone and everything that depends on it is included unconditionally. The few changed lines are in re-written Kconfig help, lines which needed something skas-related removed from them, and a few more which weren't strictly deletions. 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>
Diffstat (limited to 'arch/um/Kconfig')
-rw-r--r--arch/um/Kconfig64
1 files changed, 10 insertions, 54 deletions
diff --git a/arch/um/Kconfig b/arch/um/Kconfig
index e6ff30266542..a0e47e271156 100644
--- a/arch/um/Kconfig
+++ b/arch/um/Kconfig
@@ -62,55 +62,16 @@ config IRQ_RELEASE_METHOD
62 62
63menu "UML-specific options" 63menu "UML-specific options"
64 64
65config MODE_TT
66 bool "Tracing thread support (DEPRECATED)"
67 default n
68 depends on BROKEN
69 help
70 This option controls whether tracing thread support is compiled
71 into UML. This option is largely obsolete, given that skas0 provides
72 skas security and performance without needing to patch the host.
73 It is safe to say 'N' here; saying 'Y' may cause additional problems
74 with the resulting binary even if you run UML in SKAS mode, and running
75 in TT mode is strongly *NOT RECOMMENDED*.
76
77config STATIC_LINK 65config STATIC_LINK
78 bool "Force a static link" 66 bool "Force a static link"
79 default n 67 default n
80 depends on !MODE_TT
81 help 68 help
82 If CONFIG_MODE_TT is disabled, then this option gives you the ability 69 This option gives you the ability to force a static link of UML.
83 to force a static link of UML. Normally, if only skas mode is built 70 Normally, UML is linked as a shared binary. This is inconvenient for
84 in to UML, it will be linked as a shared binary. This is inconvenient 71 use in a chroot jail. So, if you intend to run UML inside a chroot,
85 for use in a chroot jail. So, if you intend to run UML inside a 72 you probably want to say Y here.
86 chroot, and you disable CONFIG_MODE_TT, you probably want to say Y
87 here.
88 Additionally, this option enables using higher memory spaces (up to 73 Additionally, this option enables using higher memory spaces (up to
89 2.75G) for UML - disabling CONFIG_MODE_TT and enabling this option leads 74 2.75G) for UML.
90 to best results for this.
91
92config KERNEL_HALF_GIGS
93 int "Kernel address space size (in .5G units)"
94 default "1"
95 depends on MODE_TT
96 help
97 This determines the amount of address space that UML will allocate for
98 its own, measured in half Gigabyte units. The default is 1.
99 Change this only if you need to boot UML with an unusually large amount
100 of physical memory.
101
102config MODE_SKAS
103 bool "Separate Kernel Address Space support" if MODE_TT
104 default y
105 help
106 This option controls whether skas (separate kernel address space)
107 support is compiled in.
108 Unless you have specific needs to use TT mode (which applies almost only
109 to developers), you should say Y here.
110 SKAS mode will make use of the SKAS3 patch if it is applied on the host
111 (and your UML will run in SKAS3 mode), but if no SKAS patch is applied
112 on the host it will run in SKAS0 mode, which is anyway faster than TT
113 mode.
114 75
115source "arch/um/Kconfig.arch" 76source "arch/um/Kconfig.arch"
116source "mm/Kconfig" 77source "mm/Kconfig"
@@ -118,7 +79,7 @@ source "mm/Kconfig"
118config LD_SCRIPT_STATIC 79config LD_SCRIPT_STATIC
119 bool 80 bool
120 default y 81 default y
121 depends on MODE_TT || STATIC_LINK 82 depends on STATIC_LINK
122 83
123config LD_SCRIPT_DYN 84config LD_SCRIPT_DYN
124 bool 85 bool
@@ -220,7 +181,7 @@ config SMP
220 bool "Symmetric multi-processing support (EXPERIMENTAL)" 181 bool "Symmetric multi-processing support (EXPERIMENTAL)"
221 default n 182 default n
222 #SMP_BROKEN is for x86_64. 183 #SMP_BROKEN is for x86_64.
223 depends on MODE_TT && EXPERIMENTAL && (!SMP_BROKEN || (BROKEN && SMP_BROKEN)) 184 depends on EXPERIMENTAL && (!SMP_BROKEN || (BROKEN && SMP_BROKEN))
224 help 185 help
225 This option enables UML SMP support. 186 This option enables UML SMP support.
226 It is NOT related to having a real SMP box. Not directly, at least. 187 It is NOT related to having a real SMP box. Not directly, at least.
@@ -258,11 +219,6 @@ config NEST_LEVEL
258 inside another UML, set CONFIG_NEST_LEVEL to one more than the host 219 inside another UML, set CONFIG_NEST_LEVEL to one more than the host
259 UML. 220 UML.
260 221
261 Note that if the hosting UML has its CONFIG_KERNEL_HALF_GIGS set to
262 greater than one, then the guest UML should have its CONFIG_NEST_LEVEL
263 set to the host's CONFIG_NEST_LEVEL + CONFIG_KERNEL_HALF_GIGS.
264 Only change this if you are running nested UMLs.
265
266config HIGHMEM 222config HIGHMEM
267 bool "Highmem support (EXPERIMENTAL)" 223 bool "Highmem support (EXPERIMENTAL)"
268 depends on !64BIT && EXPERIMENTAL 224 depends on !64BIT && EXPERIMENTAL
@@ -271,9 +227,9 @@ config HIGHMEM
271 This was used to allow UML to run with big amounts of memory. 227 This was used to allow UML to run with big amounts of memory.
272 Currently it is unstable, so if unsure say N. 228 Currently it is unstable, so if unsure say N.
273 229
274 To use big amounts of memory, it is recommended to disable TT mode (i.e. 230 To use big amounts of memory, it is recommended enable static
275 CONFIG_MODE_TT) and enable static linking (i.e. CONFIG_STATIC_LINK) - 231 linking (i.e. CONFIG_STATIC_LINK) - this should allow the
276 this should allow the guest to use up to 2.75G of memory. 232 guest to use up to 2.75G of memory.
277 233
278config KERNEL_STACK_ORDER 234config KERNEL_STACK_ORDER
279 int "Kernel stack size order" 235 int "Kernel stack size order"