1 mainmenu "Palacios VMM Configuration"
3 menu "Target Configuration"
7 bool "Red Storm (Cray XT3/XT4)"
9 Support for Cray XT3 and XT4 systems.
12 bool "AMD SVM Support"
15 Compile with support for AMD SVM
18 bool "Intel VMX Support"
21 Compile with support for Intel VMX
25 bool "Compile for a multi threaded OS"
28 This allows Palacios to use OS thread mechanisms
32 int "Maximum number of cpus"
36 Specifies the maximum number of hardware cpus Palacios can support
38 For uniprocessor environments, set this to 1
42 bool "Include Network Socket Support"
45 Enable networking support in Palacios
51 bool "Enable VMM telemetry support"
54 Enable the telemetry framework in Palacios
56 This is a framwork that allows components of palacios to record
57 information that is periodically reported to the log output.
58 Telemetry is automatically collected for vmexits. Subsystem telemetry
59 is configured separately
62 config SHADOW_PAGING_TELEMETRY
63 bool "Enable Shadow Paging Telemetry"
67 Enable telemetry information for shadow paging
69 config SYMBIOTIC_SWAP_TELEMETRY
70 bool "Enable Symbiotic Swap Telemetry"
72 depends on TELEMETRY && SYMBIOTIC_SWAP
74 Enable the telemetry information for the symbiotic swap subsystem
77 config PASSTHROUGH_VIDEO
78 bool "Enable Passthrough Video"
81 Configures Palacios to map a guest's framebuffer directly
82 to the hardware framebuffer
85 bool "Enable VMM instrumentation"
88 Enable the instrumentation framework
90 This is much heavier weight than profiling
93 bool "Enable Experimental options"
96 This allows the selection of experimental features. This includes incomplete or unreviewed code.
97 Only enable this feature if you are working on the features in question.
98 IMPORTANT: Non-experimental code MUST NOT use, require, or rely on experimental features.
99 Any code that violates this will be immediately deleted without warning.
101 The purpose of this option is to allow features under development to be committed to the mainline
102 to more easily track changes and provide access to multiple developers
105 depends on EXPERIMENTAL
106 bool "Enable Vnet in Palacios"
109 Enable the Vnet in Palacios
111 config BUILT_IN_STDLIB
112 bool "Enable Built in versions of stdlib functions"
115 Not all host OSes provide link targets for stdlib functions
116 Palacios provides internal implementations of these functions, that you can select from this list
118 config BUILT_IN_MEMSET
121 depends on BUILT_IN_STDLIB
123 This enables Palacios' internal implementation of memset
126 config BUILT_IN_MEMCPY
129 depends on BUILT_IN_STDLIB
131 This enables Palacios' internal implementation of memcpy
133 config BUILT_IN_MEMMOVE
136 depends on BUILT_IN_STDLIB
138 This enables Palacios' internal implementation of memmove
140 config BUILT_IN_MEMCMP
143 depends on BUILT_IN_STDLIB
145 This enables Palacios' internal implementation of memcmp
147 config BUILT_IN_STRLEN
150 depends on BUILT_IN_STDLIB
152 This enables Palacios' internal implementation of strlen
154 config BUILT_IN_STRNLEN
157 depends on BUILT_IN_STDLIB
159 This enables Palacios' internal implementation of strnlen
162 config BUILT_IN_STRCMP
165 depends on BUILT_IN_STDLIB
167 This enables Palacios' internal implementation of strcmp
169 config BUILT_IN_STRNCMP
172 depends on BUILT_IN_STDLIB
174 This enables Palacios' internal implementation of strncmp
176 config BUILT_IN_STRCAT
179 depends on BUILT_IN_STDLIB
181 This enables Palacios' internal implementation of strcat
183 config BUILT_IN_STRNCAT
186 depends on BUILT_IN_STDLIB
188 This enables Palacios' internal implementation of strncat
190 config BUILT_IN_STRCPY
193 depends on BUILT_IN_STDLIB
195 This enables Palacios' internal implementation of strcpy
197 config BUILT_IN_STRNCPY
200 depends on BUILT_IN_STDLIB
202 This enables Palacios' internal implementation of strncpy
204 config BUILT_IN_STRDUP
207 depends on BUILT_IN_STDLIB
209 This enables Palacios' internal implementation of strdup
211 config BUILT_IN_STRSTR
214 depends on BUILT_IN_STDLIB
216 This enables Palacios internal implementation of strstr
222 depends on BUILT_IN_STDLIB
224 This enables Palacios' internal implementation of atoi
226 config BUILT_IN_STRCHR
229 depends on BUILT_IN_STDLIB
231 This enables Palacios' internal implementation of strchr
233 config BUILT_IN_STRRCHR
236 depends on BUILT_IN_STDLIB
238 This enables Palacios' internal implementation of strrchr
240 config BUILT_IN_STRPBRK
243 depends on BUILT_IN_STDLIB
245 This enables Palacios' internal implementation of strpbrk
248 config BUILT_IN_STDIO
249 bool "Enable Built in versions of stdio functions"
252 Not all host OSes provide link targets for stdio functions
253 Palacios provides internal implementations of these functions, that you can select from this list
257 config BUILT_IN_SPRINTF
260 depends on BUILT_IN_STDIO
262 This enables Palacios' internal implementation of sprintf
265 config BUILT_IN_SNPRINTF
268 depends on BUILT_IN_STDIO
270 This enables Palacios' internal implementation of snprintf
273 config BUILT_IN_VSPRINTF
276 depends on BUILT_IN_STDIO
278 This enables Palacios' internal implementation of vsprintf
280 config BUILT_IN_VSNPRINTF
283 depends on BUILT_IN_STDIO
285 This enables Palacios' internal implementation of vsnprintf
287 config BUILT_IN_VSNRPRINTF
290 depends on BUILT_IN_STDIO
292 This enables Palacios' internal implementation of vsnrprintf
299 menu "Symbiotic Functions"
302 bool "Enable Symbiotic Functionality"
305 Enable Symbiotic components of the VMM
308 config SYMBIOTIC_SWAP
309 bool "Symbiotic Swap"
311 depends on SYMBIOTIC && EXPERIMENTAL
313 This enables the symbiotic swap architecture
319 menu "Debug configuration"
321 config CONFIG_DEBUG_INFO
322 bool "Compile with Debug information"
325 This adds the -g flag to the compilation flags
328 ## Is unwind information useful
331 bool "Enable Debugging"
334 This turns on debugging support
337 config DEBUG_SHADOW_PAGING
342 This turns on debugging for the shadow paging system
345 config DEBUG_NESTED_PAGING
350 This turns on debugging for the nested paging system
353 config DEBUG_CTRL_REGS
354 bool "Control registers"
358 This turns on debugging for the control register handlers
361 config DEBUG_INTERRUPTS
366 This turns on debugging for the interrupt system
375 This turns on debugging for the IO handlers
378 config DEBUG_EMULATOR
379 bool "Instruction Emulator"
383 This turns on debugging for the Instruction Emulator
391 This turns on debugging for the Xed Decoder
398 This turns on debugging for the halt instruction handler
401 bool "Device Manager"
405 This turns on debugging for the device manager
413 menu "BIOS Selection"
416 string "Path to pre-built ROMBIOS binary"
417 default "./bios/rombios/BIOS-bochs-latest"
419 This is the rombios that will be used for the guests
422 string "Path to pre-built VGABIOS binary"
423 default "./bios/vgabios/VGABIOS-lgpl-latest.bin"
425 This is the vgabios that will be used for the guests
427 config VMXASSIST_PATH
428 string "Path to pre-built VMXASSIST binary"
430 default "./bios/vmxassist/vmxassist.bin"
432 This is vmxassist image to boot real mode guests on
438 source "palacios/src/devices/Kconfig"