uml: style fixes pass 1
[linux-2.6/kvm.git] / arch / um / Kconfig
blob4aabb334a84e9349543053ec0ba030776cbd62ac
1 config DEFCONFIG_LIST
2         string
3         option defconfig_list
4         default "arch/$ARCH/defconfig"
6 # UML uses the generic IRQ sugsystem
7 config GENERIC_HARDIRQS
8         bool
9         default y
11 config UML
12         bool
13         default y
15 config MMU
16         bool
17         default y
19 config NO_IOMEM
20         def_bool y
22 mainmenu "Linux/Usermode Kernel Configuration"
24 config ISA
25         bool
27 config SBUS
28         bool
30 config PCI
31         bool
33 config PCMCIA
34         bool
36 # Yet to do!
37 config TRACE_IRQFLAGS_SUPPORT
38         bool
39         default n
41 config LOCKDEP_SUPPORT
42         bool
43         default y
45 config STACKTRACE_SUPPORT
46         bool
47         default n
49 config GENERIC_CALIBRATE_DELAY
50         bool
51         default y
53 config GENERIC_BUG
54         bool
55         default y
56         depends on BUG
58 # Used in kernel/irq/manage.c and include/linux/irq.h
59 config IRQ_RELEASE_METHOD
60         bool
61         default y
63 menu "UML-specific options"
65 config STATIC_LINK
66         bool "Force a static link"
67         default n
68         help
69           This option gives you the ability to force a static link of UML.
70           Normally, UML is linked as a shared binary.  This is inconvenient for
71           use in a chroot jail.  So, if you intend to run UML inside a chroot,
72           you probably want to say Y here.
73           Additionally, this option enables using higher memory spaces (up to
74           2.75G) for UML.
76 source "arch/um/Kconfig.arch"
77 source "mm/Kconfig"
79 config LD_SCRIPT_STATIC
80         bool
81         default y
82         depends on STATIC_LINK
84 config LD_SCRIPT_DYN
85         bool
86         default y
87         depends on !LD_SCRIPT_STATIC
89 config NET
90         bool "Networking support"
91         help
92           Unless you really know what you are doing, you should say Y here.
93           The reason is that some programs need kernel networking support even
94           when running on a stand-alone machine that isn't connected to any
95           other computer. If you are upgrading from an older kernel, you
96           should consider updating your networking tools too because changes
97           in the kernel and the tools often go hand in hand. The tools are
98           contained in the package net-tools, the location and version number
99           of which are given in <file:Documentation/Changes>.
101           For a general introduction to Linux networking, it is highly
102           recommended to read the NET-HOWTO, available from
103           <http://www.tldp.org/docs.html#howto>.
106 source "fs/Kconfig.binfmt"
108 config HOSTFS
109         tristate "Host filesystem"
110         help
111           While the User-Mode Linux port uses its own root file system for
112           booting and normal file access, this module lets the UML user
113           access files stored on the host.  It does not require any
114           network connection between the Host and UML.  An example use of
115           this might be:
117           mount none /tmp/fromhost -t hostfs -o /tmp/umlshare
119           where /tmp/fromhost is an empty directory inside UML and
120           /tmp/umlshare is a directory on the host with files the UML user
121           wishes to access.
123           For more information, see
124           <http://user-mode-linux.sourceforge.net/hostfs.html>.
126           If you'd like to be able to work with files stored on the host,
127           say Y or M here; otherwise say N.
129 config HPPFS
130         tristate "HoneyPot ProcFS (EXPERIMENTAL)"
131         depends on EXPERIMENTAL
132         help
133           hppfs (HoneyPot ProcFS) is a filesystem which allows UML /proc
134           entries to be overridden, removed, or fabricated from the host.
135           Its purpose is to allow a UML to appear to be a physical machine
136           by removing or changing anything in /proc which gives away the
137           identity of a UML.
139           See <http://user-mode-linux.sf.net/hppfs.html> for more information.
141           You only need this if you are setting up a UML honeypot.  Otherwise,
142           it is safe to say 'N' here.
144 config MCONSOLE
145         bool "Management console"
146         default y
147         help
148           The user mode linux management console is a low-level interface to
149           the kernel, somewhat like the i386 SysRq interface.  Since there is
150           a full-blown operating system running under every user mode linux
151           instance, there is much greater flexibility possible than with the
152           SysRq mechanism.
154           If you answer 'Y' to this option, to use this feature, you need the
155           mconsole client (called uml_mconsole) which is present in CVS in
156           2.4.5-9um and later (path /tools/mconsole), and is also in the
157           distribution RPM package in 2.4.6 and later.
159           It is safe to say 'Y' here.
161 config MAGIC_SYSRQ
162         bool "Magic SysRq key"
163         depends on MCONSOLE
164         help
165           If you say Y here, you will have some control over the system even
166           if the system crashes for example during kernel debugging (e.g., you
167           will be able to flush the buffer cache to disk, reboot the system
168           immediately or dump some status information). A key for each of the
169           possible requests is provided.
171           This is the feature normally accomplished by pressing a key
172           while holding SysRq (Alt+PrintScreen).
174           On UML, this is accomplished by sending a "sysrq" command with
175           mconsole, followed by the letter for the requested command.
177           The keys are documented in <file:Documentation/sysrq.txt>. Don't say Y
178           unless you really know what this hack does.
180 config SMP
181         bool "Symmetric multi-processing support (EXPERIMENTAL)"
182         default n
183         #SMP_BROKEN is for x86_64.
184         depends on EXPERIMENTAL && (!SMP_BROKEN || (BROKEN && SMP_BROKEN))
185         help
186           This option enables UML SMP support.
187           It is NOT related to having a real SMP box. Not directly, at least.
189           UML implements virtual SMP by allowing as many processes to run
190           simultaneously on the host as there are virtual processors configured.
192           Obviously, if the host is a uniprocessor, those processes will
193           timeshare, but, inside UML, will appear to be running simultaneously.
194           If the host is a multiprocessor, then UML processes may run
195           simultaneously, depending on the host scheduler.
197           This, however, is supported only in TT mode. So, if you use the SKAS
198           patch on your host, switching to TT mode and enabling SMP usually
199           gives you worse performances.
200           Also, since the support for SMP has been under-developed, there could
201           be some bugs being exposed by enabling SMP.
203           If you don't know what to do, say N.
205 config NR_CPUS
206         int "Maximum number of CPUs (2-32)"
207         range 2 32
208         depends on SMP
209         default "32"
211 config NEST_LEVEL
212         int "Nesting level"
213         default "0"
214         help
215           This is set to the number of layers of UMLs that this UML will be run
216           in.  Normally, this is zero, meaning that it will run directly on the
217           host.  Setting it to one will build a UML that can run inside a UML
218           that is running on the host.  Generally, if you intend this UML to run
219           inside another UML, set CONFIG_NEST_LEVEL to one more than the host
220           UML.
222 config HIGHMEM
223         bool "Highmem support (EXPERIMENTAL)"
224         depends on !64BIT && EXPERIMENTAL
225         default n
226         help
227           This was used to allow UML to run with big amounts of memory.
228           Currently it is unstable, so if unsure say N.
230           To use big amounts of memory, it is recommended enable static
231           linking (i.e. CONFIG_STATIC_LINK) - this should allow the
232           guest to use up to 2.75G of memory.
234 config KERNEL_STACK_ORDER
235         int "Kernel stack size order"
236         default 1 if 64BIT
237         range 1 10 if 64BIT
238         default 0 if !64BIT
239         help
240           This option determines the size of UML kernel stacks.  They will
241           be 1 << order pages.  The default is OK unless you're running Valgrind
242           on UML, in which case, set this to 3.
244 config UML_REAL_TIME_CLOCK
245         bool "Real-time Clock"
246         default y
247         help
248           This option makes UML time deltas match wall clock deltas.  This
249           should normally be enabled.  The exception would be if you are
250           debugging with UML and spend long times with UML stopped at a
251           breakpoint.  In this case, when UML is restarted, it will call the
252           timer enough times to make up for the time spent at the breakpoint.
253           This could result in a noticeable lag.  If this is a problem, then
254           disable this option.
256 endmenu
258 source "init/Kconfig"
260 source "drivers/block/Kconfig"
262 source "arch/um/Kconfig.char"
264 source "drivers/base/Kconfig"
266 source "net/Kconfig"
268 source "arch/um/Kconfig.net"
270 source "drivers/net/Kconfig"
272 source "drivers/connector/Kconfig"
274 source "fs/Kconfig"
276 source "security/Kconfig"
278 source "crypto/Kconfig"
280 source "lib/Kconfig"
282 source "drivers/scsi/Kconfig"
284 source "drivers/md/Kconfig"
286 if BROKEN
287         source "drivers/mtd/Kconfig"
288 endif
290 #This is just to shut up some Kconfig warnings, so no prompt.
291 config INPUT
292         bool
293         default n
295 source "arch/um/Kconfig.debug"