]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/blob - drivers/xen/Kconfig
8af0792dfd67b3dd15da26c5e4344e4663c95dcc
[mirror_ubuntu-zesty-kernel.git] / drivers / xen / Kconfig
1 menu "Xen driver support"
2 depends on XEN
3
4 config XEN_BALLOON
5 bool "Xen memory balloon driver"
6 default y
7 help
8 The balloon driver allows the Xen domain to request more memory from
9 the system to expand the domain's memory allocation, or alternatively
10 return unneeded memory to the system.
11
12 config XEN_SCRUB_PAGES
13 bool "Scrub pages before returning them to system"
14 depends on XEN_BALLOON
15 default y
16 help
17 Scrub pages before returning them to the system for reuse by
18 other domains. This makes sure that any confidential data
19 is not accidentally visible to other domains. Is it more
20 secure, but slightly less efficient.
21 If in doubt, say yes.
22
23 config XEN_DEV_EVTCHN
24 tristate "Xen /dev/xen/evtchn device"
25 default y
26 help
27 The evtchn driver allows a userspace process to triger event
28 channels and to receive notification of an event channel
29 firing.
30 If in doubt, say yes.
31
32 config XEN_BACKEND
33 bool "Backend driver support"
34 depends on XEN_DOM0
35 default y
36 help
37 Support for backend device drivers that provide I/O services
38 to other virtual machines.
39
40 config XENFS
41 tristate "Xen filesystem"
42 default y
43 help
44 The xen filesystem provides a way for domains to share
45 information with each other and with the hypervisor.
46 For example, by reading and writing the "xenbus" file, guests
47 may pass arbitrary information to the initial domain.
48 If in doubt, say yes.
49
50 config XEN_COMPAT_XENFS
51 bool "Create compatibility mount point /proc/xen"
52 depends on XENFS
53 default y
54 help
55 The old xenstore userspace tools expect to find "xenbus"
56 under /proc/xen, but "xenbus" is now found at the root of the
57 xenfs filesystem. Selecting this causes the kernel to create
58 the compatibility mount point /proc/xen if it is running on
59 a xen platform.
60 If in doubt, say yes.
61
62 config XEN_SYS_HYPERVISOR
63 bool "Create xen entries under /sys/hypervisor"
64 depends on SYSFS
65 select SYS_HYPERVISOR
66 default y
67 help
68 Create entries under /sys/hypervisor describing the Xen
69 hypervisor environment. When running native or in another
70 virtual environment, /sys/hypervisor will still be present,
71 but will have no xen contents.
72
73 config XEN_XENBUS_FRONTEND
74 tristate
75
76 config XEN_GNTDEV
77 tristate "userspace grant access device driver"
78 depends on XEN
79 default m
80 select MMU_NOTIFIER
81 help
82 Allows userspace processes to use grants.
83
84 config XEN_GRANT_DEV_ALLOC
85 tristate "User-space grant reference allocator driver"
86 depends on XEN
87 default m
88 help
89 Allows userspace processes to create pages with access granted
90 to other domains. This can be used to implement frontend drivers
91 or as part of an inter-domain shared memory channel.
92
93 config XEN_PLATFORM_PCI
94 tristate "xen platform pci device driver"
95 depends on XEN_PVHVM && PCI
96 default m
97 help
98 Driver for the Xen PCI Platform device: it is responsible for
99 initializing xenbus and grant_table when running in a Xen HVM
100 domain. As a consequence this driver is required to run any Xen PV
101 frontend on Xen HVM.
102
103 config SWIOTLB_XEN
104 def_bool y
105 depends on PCI
106 select SWIOTLB
107
108 config XEN_PCIDEV_BACKEND
109 tristate "Xen PCI-device backend driver"
110 depends on PCI && X86 && XEN
111 depends on XEN_BACKEND
112 help
113 The PCI device backend driver allows the kernel to export arbitrary
114 PCI devices to other guests. If you select this to be a module, you
115 will need to make sure no other driver has bound to the device(s)
116 you want to make visible to other guests.
117
118 choice
119 prompt "PCI Backend Mode"
120 depends on XEN_PCIDEV_BACKEND
121
122 config XEN_PCIDEV_BACKEND_VPCI
123 bool "Virtual PCI"
124 help
125 This PCI Backend hides the true PCI topology and makes the frontend
126 think there is a single PCI bus with only the exported devices on it.
127 For example, a device at 03:05.0 will be re-assigned to 00:00.0. A
128 second device at 02:1a.1 will be re-assigned to 00:01.1.
129
130 config XEN_PCIDEV_BACKEND_PASS
131 bool "Passthrough"
132 help
133 This PCI Backend provides a real view of the PCI topology to the
134 frontend (for example, a device at 06:01.b will still appear at
135 06:01.b to the frontend). This is similar to how Xen 2.0.x exposed
136 PCI devices to its driver domains. This may be required for drivers
137 which depend on finding their hardward in certain bus/slot
138 locations.
139
140 endchoice
141
142 config XEN_PCIDEV_BE_DEBUG
143 bool "Xen PCI Backend Debugging"
144 depends on XEN_PCIDEV_BACKEND
145 default n
146 help
147 Allows to observe all of the traffic from the frontend/backend
148 when reading and writting to the configuration registers.
149 If in doubt, say no.
150
151 endmenu