2 # This Kconfig describe xen options
5 mainmenu "Xen Configuration"
11 config XEN_INTERFACE_VERSION
17 config XEN_PRIVILEGED_GUEST
18 bool "Privileged Guest (domain 0)"
20 Support for privileged operation (domain 0)
22 config XEN_UNPRIVILEGED_GUEST
23 def_bool !XEN_PRIVILEGED_GUEST
33 config XEN_NETDEV_ACCEL_SFC_UTIL
37 tristate "Backend driver support"
38 default XEN_PRIVILEGED_GUEST
40 Support for backend device drivers that provide I/O services
41 to other virtual machines.
43 config XEN_BLKDEV_BACKEND
44 tristate "Block-device backend driver"
45 depends on XEN_BACKEND
48 The block-device backend driver allows the kernel to export its
49 block devices to other guests via a high-performance shared-memory
53 tristate "Block-device tap backend driver"
54 depends on XEN_BACKEND
57 The block tap driver is an alternative to the block back driver
58 and allows VM block requests to be redirected to userspace through
59 a device interface. The tap allows user-space development of
60 high-performance block backends, where disk images may be implemented
61 as files, in memory, or on other hosts across the network. This
62 driver can safely coexist with the existing blockback driver.
64 config XEN_NETDEV_BACKEND
65 tristate "Network-device backend driver"
66 depends on XEN_BACKEND && NET
69 The network-device backend driver allows the kernel to export its
70 network devices to other guests via a high-performance shared-memory
73 config XEN_NETDEV_PIPELINED_TRANSMITTER
74 bool "Pipelined transmitter (DANGEROUS)"
75 depends on XEN_NETDEV_BACKEND
77 If the net backend is a dumb domain, such as a transparent Ethernet
78 bridge with no local IP interface, it is safe to say Y here to get
79 slightly lower network overhead.
80 If the backend has a local IP interface; or may be doing smart things
81 like reassembling packets to perform firewall filtering; or if you
82 are unsure; or if you experience network hangs when this option is
83 enabled; then you must say N here.
85 config XEN_NETDEV_ACCEL_SFC_BACKEND
86 tristate "Network-device backend driver acceleration for Solarflare NICs"
87 depends on SFC && SFC_RESOURCE && XEN_NETDEV_BACKEND
88 select XEN_NETDEV_ACCEL_SFC_UTIL
91 config XEN_NETDEV_LOOPBACK
92 tristate "Network-device loopback driver"
93 depends on XEN_NETDEV_BACKEND
95 A two-interface loopback device to emulate a local netfront-netback
96 connection. If unsure, it is probably safe to say N here.
98 config XEN_PCIDEV_BACKEND
99 tristate "PCI-device backend driver"
100 depends on PCI && XEN_BACKEND
103 The PCI device backend driver allows the kernel to export arbitrary
104 PCI devices to other guests. If you select this to be a module, you
105 will need to make sure no other driver has bound to the device(s)
106 you want to make visible to other guests.
109 prompt "PCI Backend Mode"
110 depends on XEN_PCIDEV_BACKEND
111 default XEN_PCIDEV_BACKEND_VPCI if !IA64
112 default XEN_PCIDEV_BACKEND_CONTROLLER if IA64
114 config XEN_PCIDEV_BACKEND_VPCI
117 This PCI Backend hides the true PCI topology and makes the frontend
118 think there is a single PCI bus with only the exported devices on it.
119 For example, a device at 03:05.0 will be re-assigned to 00:00.0. A
120 second device at 02:1a.1 will be re-assigned to 00:01.1.
122 config XEN_PCIDEV_BACKEND_PASS
125 This PCI Backend provides a real view of the PCI topology to the
126 frontend (for example, a device at 06:01.b will still appear at
127 06:01.b to the frontend). This is similar to how Xen 2.0.x exposed
128 PCI devices to its driver domains. This may be required for drivers
129 which depend on finding their hardward in certain bus/slot
132 config XEN_PCIDEV_BACKEND_SLOT
135 This PCI Backend hides the true PCI topology and makes the frontend
136 think there is a single PCI bus with only the exported devices on it.
137 Contrary to the virtual PCI backend, a function becomes a new slot.
138 For example, a device at 03:05.2 will be re-assigned to 00:00.0. A
139 second device at 02:1a.1 will be re-assigned to 00:01.0.
141 config XEN_PCIDEV_BACKEND_CONTROLLER
145 This PCI backend virtualizes the PCI bus topology by providing a
146 virtual bus per PCI root device. Devices which are physically under
147 the same root bus will appear on the same virtual bus. For systems
148 with complex I/O addressing, this is the only backend which supports
149 extended I/O port spaces and MMIO translation offsets. This backend
150 also supports slot virtualization. For example, a device at
151 0000:01:02.1 will be re-assigned to 0000:00:00.0. A second device
152 at 0000:02:05.0 (behind a P2P bridge on bus 0000:01) will be
153 re-assigned to 0000:00:01.0. A third device at 0000:16:05.0 (under
154 a different PCI root bus) will be re-assigned to 0000:01:00.0.
158 config XEN_PCIDEV_BE_DEBUG
159 bool "PCI Backend Debugging"
160 depends on XEN_PCIDEV_BACKEND
162 config XEN_TPMDEV_BACKEND
163 tristate "TPM-device backend driver"
164 depends on XEN_BACKEND
166 The TPM-device backend driver
168 config XEN_BLKDEV_FRONTEND
169 tristate "Block-device frontend driver"
172 The block-device frontend driver allows the kernel to access block
173 devices mounted within another guest OS. Unless you are building a
174 dedicated device-driver domain, or your master control domain
175 (domain 0), then you almost certainly want to say Y here.
177 config XEN_NETDEV_FRONTEND
178 tristate "Network-device frontend driver"
182 The network-device frontend driver allows the kernel to access
183 network interfaces within another guest OS. Unless you are building a
184 dedicated device-driver domain, or your master control domain
185 (domain 0), then you almost certainly want to say Y here.
187 config XEN_NETDEV_ACCEL_SFC_FRONTEND
188 tristate "Network-device frontend driver acceleration for Solarflare NICs"
189 depends on XEN_NETDEV_FRONTEND
190 select XEN_NETDEV_ACCEL_SFC_UTIL
191 default XEN_NETDEV_FRONTEND
194 tristate "User-space granted page access driver"
195 default XEN_PRIVILEGED_GUEST
197 Device for accessing (in user-space) pages that have been granted
200 config XEN_FRAMEBUFFER
201 tristate "Framebuffer-device frontend driver"
203 select FB_CFB_FILLRECT
204 select FB_CFB_COPYAREA
205 select FB_CFB_IMAGEBLIT
208 The framebuffer-device frontend drivers allows the kernel to create a
209 virtual framebuffer. This framebuffer can be viewed in another
210 domain. Unless this domain has access to a real video card, you
211 probably want to say Y here.
214 tristate "Keyboard-device frontend driver"
215 depends on XEN_FRAMEBUFFER && INPUT
218 The keyboard-device frontend driver allows the kernel to create a
219 virtual keyboard. This keyboard can then be driven by another
220 domain. If you've said Y to CONFIG_XEN_FRAMEBUFFER, you probably
224 bool "Xen virtual console"
227 The Xen virtual console is ...
229 config XEN_SCRUB_PAGES
230 bool "Scrub memory before freeing it to Xen"
233 Erase memory contents before freeing it back to Xen's global
234 pool. This ensures that any secrets contained within that
235 memory (e.g., private keys) cannot be found by other guests that
236 may be running on the machine. Most people will want to say Y here.
237 If security is not a concern then you may increase performance by
240 config XEN_DISABLE_SERIAL
241 bool "Disable serial port drivers"
244 Disable serial port drivers, allowing the Xen console driver
245 to provide a serial console at ttyS0.
248 tristate "Export Xen attributes in sysfs"
250 select SYS_HYPERVISOR
253 Xen hypervisor attributes will show up under /sys/hypervisor/.
256 prompt "Xen version compatibility"
257 default XEN_COMPAT_030002_AND_LATER
259 config XEN_COMPAT_030002_AND_LATER
260 bool "3.0.2 and later"
262 config XEN_COMPAT_030004_AND_LATER
263 bool "3.0.4 and later"
265 config XEN_COMPAT_030100_AND_LATER
266 bool "3.1.0 and later"
268 config XEN_COMPAT_LATEST_ONLY
269 bool "no compatibility code"
275 default 0xffffff if XEN_COMPAT_LATEST_ONLY
276 default 0x030100 if XEN_COMPAT_030100_AND_LATER
277 default 0x030004 if XEN_COMPAT_030004_AND_LATER
278 default 0x030002 if XEN_COMPAT_030002_AND_LATER
283 config HAVE_IRQ_IGNORE_UNHANDLED
286 config GENERIC_HARDIRQS_NO__DO_IRQ
294 depends on SMP && !PPC_XEN