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
104 config BUILT_IN_STDLIB
105 bool "Enable Built in versions of stdlib functions"
108 Not all host OSes provide link targets for stdlib functions
109 Palacios provides internal implementations of these functions, that you can select from this list
111 config BUILT_IN_MEMSET
114 depends on BUILT_IN_STDLIB
116 This enables Palacios' internal implementation of memset
119 config BUILT_IN_MEMCPY
122 depends on BUILT_IN_STDLIB
124 This enables Palacios' internal implementation of memcpy
126 config BUILT_IN_MEMCMP
129 depends on BUILT_IN_STDLIB
131 This enables Palacios' internal implementation of memcmp
133 config BUILT_IN_STRLEN
136 depends on BUILT_IN_STDLIB
138 This enables Palacios' internal implementation of strlen
140 config BUILT_IN_STRNLEN
143 depends on BUILT_IN_STDLIB
145 This enables Palacios' internal implementation of strnlen
148 config BUILT_IN_STRCMP
151 depends on BUILT_IN_STDLIB
153 This enables Palacios' internal implementation of strcmp
155 config BUILT_IN_STRNCMP
158 depends on BUILT_IN_STDLIB
160 This enables Palacios' internal implementation of strncmp
162 config BUILT_IN_STRCAT
165 depends on BUILT_IN_STDLIB
167 This enables Palacios' internal implementation of strcat
169 config BUILT_IN_STRNCAT
172 depends on BUILT_IN_STDLIB
174 This enables Palacios' internal implementation of strncat
176 config BUILT_IN_STRCPY
179 depends on BUILT_IN_STDLIB
181 This enables Palacios' internal implementation of strcpy
183 config BUILT_IN_STRNCPY
186 depends on BUILT_IN_STDLIB
188 This enables Palacios' internal implementation of strncpy
190 config BUILT_IN_STRDUP
193 depends on BUILT_IN_STDLIB
195 This enables Palacios' internal implementation of strdup
201 depends on BUILT_IN_STDLIB
203 This enables Palacios' internal implementation of atoi
205 config BUILT_IN_STRCHR
208 depends on BUILT_IN_STDLIB
210 This enables Palacios' internal implementation of strchr
212 config BUILT_IN_STRRCHR
215 depends on BUILT_IN_STDLIB
217 This enables Palacios' internal implementation of strrchr
219 config BUILT_IN_STRPBRK
222 depends on BUILT_IN_STDLIB
224 This enables Palacios' internal implementation of strpbrk
227 config BUILT_IN_STDIO
228 bool "Enable Built in versions of stdio functions"
231 Not all host OSes provide link targets for stdio functions
232 Palacios provides internal implementations of these functions, that you can select from this list
236 config BUILT_IN_SPRINTF
239 depends on BUILT_IN_STDIO
241 This enables Palacios' internal implementation of sprintf
244 config BUILT_IN_SNPRINTF
247 depends on BUILT_IN_STDIO
249 This enables Palacios' internal implementation of snprintf
252 config BUILT_IN_VSPRINTF
255 depends on BUILT_IN_STDIO
257 This enables Palacios' internal implementation of vsprintf
259 config BUILT_IN_VSNPRINTF
262 depends on BUILT_IN_STDIO
264 This enables Palacios' internal implementation of vsnprintf
266 config BUILT_IN_VSNRPRINTF
269 depends on BUILT_IN_STDIO
271 This enables Palacios' internal implementation of vsnrprintf
278 menu "Symbiotic Functions"
281 bool "Enable Symbiotic Functionality"
284 Enable Symbiotic components of the VMM
287 config SYMBIOTIC_SWAP
288 bool "Symbiotic Swap"
290 depends on SYMBIOTIC && EXPERIMENTAL
292 This enables the symbiotic swap architecture
298 menu "Debug configuration"
300 config CONFIG_DEBUG_INFO
301 bool "Compile with Debug information"
304 This adds the -g flag to the compilation flags
307 ## Is unwind information useful
310 bool "Enable Debugging"
313 This turns on debugging support
316 config DEBUG_SHADOW_PAGING
321 This turns on debugging for the shadow paging system
324 config DEBUG_NESTED_PAGING
329 This turns on debugging for the nested paging system
332 config DEBUG_CTRL_REGS
333 bool "Control registers"
337 This turns on debugging for the control register handlers
340 config DEBUG_INTERRUPTS
345 This turns on debugging for the interrupt system
354 This turns on debugging for the IO handlers
357 config DEBUG_EMULATOR
358 bool "Instruction Emulator"
362 This turns on debugging for the Instruction Emulator
370 This turns on debugging for the Xed Decoder
377 This turns on debugging for the halt instruction handler
380 bool "Device Manager"
384 This turns on debugging for the device manager
392 menu "BIOS Selection"
395 string "Path to pre-built ROMBIOS binary"
396 default "./bios/rombios/BIOS-bochs-latest"
398 This is the rombios that will be used for the guests
401 string "Path to pre-built VGABIOS binary"
402 default "./bios/vgabios/VGABIOS-lgpl-latest.bin"
404 This is the vgabios that will be used for the guests
406 config VMXASSIST_PATH
407 string "Path to pre-built VMXASSIST binary"
409 default "./bios/vmxassist/vmxassist.bin"
411 This is vmxassist image to boot real mode guests on
417 source "palacios/src/devices/Kconfig"