1 mainmenu "Palacios VMM Configuration"
3 menu "Target Configuration"
7 bool "Set defaults needed for the Kitten OS"
10 This enables the necesary options to compile Palacios with Kitten
14 bool "Red Storm (Cray XT3/XT4)"
16 Support for Cray XT3 and XT4 systems.
19 bool "AMD SVM Support"
22 Compile with support for AMD SVM
25 bool "Intel VMX Support"
28 Compile with support for Intel VMX
32 bool "Compile for a multi threaded OS"
35 This allows Palacios to use OS thread mechanisms
39 int "Maximum number of cpus"
43 Specifies the maximum number of hardware cpus Palacios can support
45 For uniprocessor environments, set this to 1
49 bool "Include Network Socket Support"
52 Enable networking support in Palacios
58 bool "Enable VMM telemetry support"
61 Enable the telemetry framework in Palacios
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
69 config SHADOW_PAGING_TELEMETRY
70 bool "Enable Shadow Paging Telemetry"
74 Enable telemetry information for shadow paging
78 bool "Enable VMM instrumentation"
81 Enable the instrumentation framework
83 This is much heavier weight than profiling
86 bool "Enable Experimental options"
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.
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
98 depends on EXPERIMENTAL
99 bool "Enable Vnet in Palacios"
102 Enable the Vnet in Palacios
105 depends on EXPERIMENTAL && VNET
106 bool "Enable Vnet Debug in Palacios"
109 Enable the Vnet debug in Palacios
115 source "Kconfig.stdlibs"
119 menu "Virtual Paging"
122 bool "Enable shadow paging"
125 Enables shadow paging for virtual machines
128 config SHADOW_PAGING_VTLB
131 depends on SHADOW_PAGING
133 Enables Virtual TLB implemenation for shadow paging
136 config DEBUG_SHDW_PG_VTLB
137 bool "Enable VTLB debugging"
139 depends on SHADOW_PAGING_VTLB
141 Enables debugging messages for VTLB implementation
146 menu "Symbiotic Functions"
149 bool "Enable Symbiotic Functionality"
152 Enable Symbiotic components of the VMM.
153 This includes the SymSpy interface.
156 bool "Symbiotic upcalls"
158 depends on SYMBIOTIC && EXPERIMENTAL
160 Enables the Symbiotic upcall interface
165 depends on SYMBIOTIC && SYMCALL && EXPERIMENTAL
167 This enables the SwapBypass architecture
169 config SWAPBYPASS_TELEMETRY
170 bool "Enable SwapBypass Telemetry"
172 depends on TELEMETRY && SWAPBYPASS
174 Enable the telemetry information for the SwapBypass subsystem
177 bool "Symbiotic Modules"
179 depends on EXPERIMENTAL
180 # depends on SYMBIOTIC
182 Enable Symbiotic module loading
186 source "modules/Kconfig"
196 menu "Debug configuration"
198 config CONFIG_DEBUG_INFO
199 bool "Compile with Debug information"
202 This adds the -g flag to the compilation flags
205 ## Is unwind information useful
208 bool "Enable Debugging"
211 This turns on debugging support
214 config DEBUG_SHADOW_PAGING
219 This turns on debugging for the shadow paging system
222 config DEBUG_NESTED_PAGING
227 This turns on debugging for the nested paging system
230 config DEBUG_CTRL_REGS
231 bool "Control registers"
235 This turns on debugging for the control register handlers
238 config DEBUG_INTERRUPTS
243 This turns on debugging for the interrupt system
252 This turns on debugging for the IO handlers
255 config DEBUG_EMULATOR
256 bool "Instruction Emulator"
260 This turns on debugging for the Instruction Emulator
268 This turns on debugging for the Xed Decoder
275 This turns on debugging for the halt instruction handler
278 bool "Device Manager"
282 This turns on debugging for the device manager
290 menu "BIOS Selection"
293 string "Path to pre-built ROMBIOS binary"
294 default "./bios/rombios/BIOS-bochs-latest"
296 This is the rombios that will be used for the guests
299 string "Path to pre-built VGABIOS binary"
300 default "./bios/vgabios/VGABIOS-lgpl-latest.bin"
302 This is the vgabios that will be used for the guests
304 config VMXASSIST_PATH
305 string "Path to pre-built VMXASSIST binary"
307 default "./bios/vmxassist/vmxassist.bin"
309 This is vmxassist image to boot real mode guests on
315 source "palacios/src/devices/Kconfig"