Palacios Public Git Repository

To checkout Palacios execute

  git clone http://v3vee.org/palacios/palacios.web/palacios.git
This will give you the master branch. You probably want the devel branch or one of the release branches. To switch to the devel branch, simply execute
  cd palacios
  git checkout --track -b devel origin/devel
The other branches are similar.


8a7f97cba07780bd1323089e6bb12edafc71674c
[palacios.releases.git] / Kconfig
1 mainmenu "Palacios VMM Configuration"
2
3 menu "Target Configuration"
4
5
6 config KITTEN
7         bool "Set defaults needed for the Kitten OS"
8         default y
9         help
10           This enables the necesary options to compile Palacios with Kitten
11
12
13 config CRAY_XT
14         bool "Red Storm (Cray XT3/XT4)"
15         help
16           Support for Cray XT3 and XT4 systems.
17
18 config SVM
19         bool "AMD SVM Support"
20         default y
21         help
22           Compile with support for AMD SVM
23
24 config VMX
25         bool "Intel VMX Support"
26         default y
27         help 
28           Compile with support for Intel VMX
29
30
31 config MULTITHREAD_OS
32         bool "Compile for a multi threaded OS"
33         default y
34         help 
35           This allows Palacios to use OS thread mechanisms
36
37
38 config MAX_CPUS
39         int "Maximum number of cpus"
40         range 1 255
41         default "16"
42         help 
43           Specifies the maximum number of hardware cpus Palacios can support
44
45           For uniprocessor environments, set this to 1
46
47
48 config SOCKET
49         bool "Include Network Socket Support"
50         default y
51         help 
52           Enable networking support in Palacios
53
54
55
56
57 config TELEMETRY
58         bool "Enable VMM telemetry support"
59         default n
60         help 
61           Enable the telemetry framework in Palacios
62           -----
63           This is a framwork that allows components of palacios to record 
64           information that is periodically reported to the log output.
65           Telemetry is automatically collected for vmexits. Subsystem telemetry 
66           is configured separately
67
68
69 config SHADOW_PAGING_TELEMETRY
70         bool "Enable Shadow Paging Telemetry"
71         default y
72         depends on TELEMETRY
73         help
74           Enable telemetry information for shadow paging 
75
76
77 config INSTRUMENT_VMM
78         bool "Enable VMM instrumentation"
79         default n
80         help 
81           Enable the instrumentation framework
82           --------
83           This is much heavier weight than profiling
84
85 config EXPERIMENTAL
86         bool "Enable Experimental options"
87         default n
88         help 
89           This allows the selection of experimental features. This includes incomplete or unreviewed code. 
90           Only enable this feature if you are working on the features in question. 
91           IMPORTANT: Non-experimental code MUST NOT use, require, or rely on experimental features. 
92           Any code that violates this will be immediately deleted without warning. 
93           -- 
94           The purpose of this option is to allow features under development to be committed to the mainline
95           to more easily track changes and provide access to multiple developers
96
97 config VNET
98         depends on EXPERIMENTAL
99         bool "Enable Vnet in Palacios"
100         default n
101         help
102           Enable the Vnet in Palacios
103
104 config DEBUG_VNET
105         depends on EXPERIMENTAL && VNET
106         bool "Enable Vnet Debug in Palacios"
107         default n
108         help
109           Enable the Vnet debug in Palacios
110
111
112 endmenu
113
114
115 source "Kconfig.stdlibs"
116
117
118
119 menu "Virtual Paging"
120
121 config SHADOW_PAGING
122         bool "Enable shadow paging"
123         default y
124         help 
125            Enables shadow paging for virtual machines
126
127
128 config SHADOW_PAGING_VTLB
129         bool "Virtual TLB"
130         default y
131         depends on SHADOW_PAGING
132         help 
133            Enables Virtual TLB implemenation for shadow paging
134
135
136 config DEBUG_SHDW_PG_VTLB
137         bool "Enable VTLB debugging"
138         default n
139         depends on SHADOW_PAGING_VTLB
140         help
141           Enables debugging messages for VTLB implementation
142
143 endmenu
144
145
146 menu "Symbiotic Functions"
147
148 config SYMBIOTIC
149         bool "Enable Symbiotic Functionality"
150         default n
151         help 
152           Enable Symbiotic components of the VMM. 
153           This includes the SymSpy interface.
154
155 config SYMCALL
156         bool "Symbiotic upcalls"
157         default n
158         depends on SYMBIOTIC && EXPERIMENTAL
159         help
160           Enables the Symbiotic upcall interface
161
162 config SWAPBYPASS
163         bool "SwapBypass"
164         default n
165         depends on SYMBIOTIC && SYMCALL && EXPERIMENTAL
166         help 
167           This enables the SwapBypass architecture
168
169 config SWAPBYPASS_TELEMETRY
170         bool "Enable SwapBypass Telemetry"
171         default n
172         depends on TELEMETRY && SWAPBYPASS
173         help 
174           Enable the telemetry information for the SwapBypass subsystem
175
176 menuconfig SYMMOD 
177         bool "Symbiotic Modules"
178         default n
179         depends on EXPERIMENTAL
180 #       depends on SYMBIOTIC
181         help
182           Enable Symbiotic module loading
183
184 if SYMMOD
185
186 source "modules/Kconfig"
187
188 endif
189
190
191
192 endmenu
193
194
195
196 menu "Debug configuration"
197
198 config CONFIG_DEBUG_INFO
199         bool "Compile with Debug information"
200         default n
201         help 
202          This adds the -g flag to the compilation flags
203
204
205 ## Is unwind information useful
206
207 config DEBUG_ON
208         bool "Enable Debugging"
209         default y
210         help
211           This turns on debugging support
212
213
214 config DEBUG_SHADOW_PAGING
215         bool "Shadow paging"
216         default n
217         depends on DEBUG_ON
218         help 
219           This turns on debugging for the shadow paging system
220
221
222 config DEBUG_NESTED_PAGING
223         bool "Nested paging"
224         default n
225         depends on DEBUG_ON
226         help 
227           This turns on debugging for the nested paging system
228
229
230 config DEBUG_CTRL_REGS
231         bool "Control registers"
232         default n
233         depends on DEBUG_ON
234         help 
235           This turns on debugging for the control register handlers
236
237
238 config DEBUG_INTERRUPTS
239         bool "Interrupts"
240         default n
241         depends on DEBUG_ON
242         help 
243           This turns on debugging for the interrupt system
244
245
246
247 config DEBUG_IO
248         bool "IO"
249         default n
250         depends on DEBUG_ON
251         help 
252           This turns on debugging for the IO handlers
253
254
255 config DEBUG_EMULATOR
256         bool "Instruction Emulator"
257         default n
258         depends on DEBUG_ON
259         help 
260           This turns on debugging for the Instruction Emulator
261
262
263 config DEBUG_XED
264         bool "XED"
265         default n
266         depends on DEBUG_ON
267         help 
268           This turns on debugging for the Xed Decoder
269
270 config DEBUG_HALT
271         bool "Halt"
272         default n
273         depends on DEBUG_ON
274         help 
275           This turns on debugging for the halt instruction handler
276
277 config DEBUG_DEV_MGR
278         bool "Device Manager"
279         default n
280         depends on DEBUG_ON
281         help 
282           This turns on debugging for the device manager
283
284
285
286
287 endmenu
288
289
290 menu "BIOS Selection"
291
292 config ROMBIOS_PATH
293         string "Path to pre-built ROMBIOS binary"
294         default "./bios/rombios/BIOS-bochs-latest"
295         help
296           This is the rombios that will be used for the guests
297
298 config VGABIOS_PATH
299         string "Path to pre-built VGABIOS binary"
300         default "./bios/vgabios/VGABIOS-lgpl-latest.bin"
301         help
302           This is the vgabios that will be used for the guests
303
304 config VMXASSIST_PATH
305         string "Path to pre-built VMXASSIST binary"
306         depends on VMX
307         default "./bios/vmxassist/vmxassist.bin"
308         help
309           This is vmxassist image to boot real mode guests on 
310           Intel VMX Platforms
311
312 endmenu
313
314
315 source "palacios/src/devices/Kconfig"
316