Fedora kernel-2.6.17-1.2142_FC4
[linux-2.6.git] / arch / xen / Kconfig
1 #
2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
4 #
5
6 mainmenu "Linux Kernel Configuration"
7
8 config XEN
9         bool
10         default y
11         help
12           This is the Linux Xen port.
13
14 config ARCH_XEN
15         bool
16         default y
17
18
19 config NO_IDLE_HZ
20         bool
21         default y
22
23
24 menu "XEN"
25
26 config XEN_PRIVILEGED_GUEST
27         bool "Privileged Guest (domain 0)"
28         default n
29         select XEN_PHYSDEV_ACCESS
30         help
31           Support for privileged operation (domain 0)
32
33 config XEN_PHYSDEV_ACCESS
34         bool "Physical device access"
35         default XEN_PRIVILEGED_GUEST
36         help
37           Assume access is available to physical hardware devices
38           (e.g., hard drives, network cards). This allows you to configure
39           such devices and also includes some low-level support that is
40           otherwise not compiled into the kernel.
41
42 config XEN_BLKDEV_BACKEND
43         bool "Block-device backend driver"
44         depends on XEN_PHYSDEV_ACCESS
45         default y
46         help
47           The block-device backend driver allows the kernel to export its
48           block devices to other guests via a high-performance shared-memory
49           interface.
50
51 config XEN_BLKDEV_TAP_BE
52         bool "Block Tap support for backend driver (DANGEROUS)"
53         depends on XEN_BLKDEV_BACKEND
54         default n
55         help
56           If you intend to use the block tap driver, the backend domain will
57           not know the domain id of the real frontend, and so will not be able
58           to map its data pages.  This modifies the backend to attempt to map
59           from both the tap domain and the real frontend.  This presents a
60           security risk, and so should ONLY be used for development
61           with the blktap.  This option will be removed as the block drivers are
62           modified to use grant tables.
63
64 config XEN_BLKDEV_GRANT
65         bool "Grant table substrate for block drivers"
66         depends on !XEN_BLKDEV_TAP_BE
67         default y
68         help
69           This introduces the use of grant tables as a data exhange mechanism
70           between the frontend and backend block drivers. This currently
71           conflicts with the block tap.
72
73 config XEN_NETDEV_BACKEND
74         bool "Network-device backend driver"
75         depends on XEN_PHYSDEV_ACCESS
76         default y
77         help
78           The network-device backend driver allows the kernel to export its
79           network devices to other guests via a high-performance shared-memory
80           interface.
81
82 config XEN_BLKDEV_FRONTEND
83         bool "Block-device frontend driver"
84         default y
85         help
86           The block-device frontend driver allows the kernel to access block
87           devices mounted within another guest OS. Unless you are building a
88           dedicated device-driver domain, or your master control domain
89           (domain 0), then you almost certainly want to say Y here.
90
91 config XEN_NETDEV_FRONTEND
92         bool "Network-device frontend driver"
93         default y
94         help
95           The network-device frontend driver allows the kernel to access
96           network interfaces within another guest OS. Unless you are building a
97           dedicated device-driver domain, or your master control domain
98           (domain 0), then you almost certainly want to say Y here.
99
100 config XEN_NETDEV_FRONTEND_PIPELINED_TRANSMITTER
101         bool "Pipelined transmitter (DANGEROUS)"
102         depends on XEN_NETDEV_FRONTEND
103         default n
104         help
105           The driver will assume that the backend is pipelining packets for
106           transmission: whenever packets are pending in the remote backend,
107           the driver will not send asynchronous notifications when it queues
108           additional packets for transmission.
109           If the backend is a dumb domain, such as a transparent Ethernet
110           bridge with no local IP interface, it is safe to say Y here to get
111           slightly lower network overhead.
112           If the backend has a local IP interface; or may be doing smart things
113           like reassembling packets to perform firewall filtering; or if you
114           are unsure; or if you experience network hangs when this option is
115           enabled; then you must say N here.
116
117 config XEN_BLKDEV_TAP
118         bool "Block device tap driver"
119         default n
120         help
121           This driver allows a VM to interact on block device channels
122           to other VMs.  Block messages may be passed through or redirected
123           to a character device, allowing device prototyping in application
124           space.  Odds are that you want to say N here.
125
126 config XEN_SHADOW_MODE
127         bool "Fake shadow mode"
128         default n
129     help
130       fakes out a shadow mode kernel
131
132
133 config XEN_SCRUB_PAGES
134         bool "Scrub memory before freeing it to Xen"
135         default y
136         help
137           Erase memory contents before freeing it back to Xen's global
138           pool. This ensures that any secrets contained within that
139           memory (e.g., private keys) cannot be found by other guests that
140           may be running on the machine. Most people will want to say Y here.
141           If security is not a concern then you may increase performance by
142           saying N.
143
144 choice
145         prompt "Processor Type"
146         default XEN_X86
147
148 config XEN_X86
149         bool "X86"
150         help
151           Choose this option if your computer is a X86 architecture.
152
153 config XEN_X86_64
154         bool "X86_64"
155         help
156           Choose this option if your computer is a X86_64 architecture.
157
158 endchoice
159
160 endmenu
161
162 config HAVE_ARCH_DEV_ALLOC_SKB
163         bool
164         default y
165
166 source "init/Kconfig"
167
168 if XEN_X86
169 source "arch/xen/i386/Kconfig"
170 endif
171
172 if XEN_X86_64
173 source "arch/xen/x86_64/Kconfig"
174 endif
175
176 menu "Executable file formats"
177
178 source "fs/Kconfig.binfmt"
179
180 endmenu
181
182 source "arch/xen/Kconfig.drivers"
183
184 source "fs/Kconfig"
185
186 source "arch/i386/Kconfig.debug"
187
188 source "security/Kconfig"
189
190 source "crypto/Kconfig"
191
192 source "lib/Kconfig"