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
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
112 depends on EXPERIMENTAL && VNET
113 bool "Enable Vnet Debug in Palacios"
116 Enable the Vnet debug in Palacios
122 source "Kconfig.stdlibs"
126 menu "Virtual Paging"
129 bool "Enable shadow paging"
132 Enables shadow paging for virtual machines
135 config SHADOW_PAGING_VTLB
138 depends on SHADOW_PAGING
140 Enables Virtual TLB implemenation for shadow paging
143 config DEBUG_SHDW_PG_VTLB
144 bool "Enable VTLB debugging"
146 depends on SHADOW_PAGING_VTLB
148 Enables debugging messages for VTLB implementation
153 menu "Symbiotic Functions"
156 bool "Enable Symbiotic Functionality"
159 Enable Symbiotic components of the VMM.
160 This includes the SymSpy interface.
163 bool "Symbiotic upcalls"
165 depends on SYMBIOTIC && EXPERIMENTAL
167 Enables the Symbiotic upcall interface
172 depends on SYMBIOTIC && SYMCALL && EXPERIMENTAL
174 This enables the SwapBypass architecture
176 config SWAPBYPASS_TELEMETRY
177 bool "Enable SwapBypass Telemetry"
179 depends on TELEMETRY && SWAPBYPASS
181 Enable the telemetry information for the SwapBypass subsystem
184 bool "Symbiotic Modules"
186 depends on EXPERIMENTAL
187 # depends on SYMBIOTIC
189 Enable Symbiotic module loading
193 source "modules/Kconfig"
203 menu "Debug configuration"
205 config CONFIG_DEBUG_INFO
206 bool "Compile with Debug information"
209 This adds the -g flag to the compilation flags
212 ## Is unwind information useful
215 bool "Enable Debugging"
218 This turns on debugging support
221 config DEBUG_SHADOW_PAGING
226 This turns on debugging for the shadow paging system
229 config DEBUG_NESTED_PAGING
234 This turns on debugging for the nested paging system
237 config DEBUG_CTRL_REGS
238 bool "Control registers"
242 This turns on debugging for the control register handlers
245 config DEBUG_INTERRUPTS
250 This turns on debugging for the interrupt system
259 This turns on debugging for the IO handlers
262 config DEBUG_EMULATOR
263 bool "Instruction Emulator"
267 This turns on debugging for the Instruction Emulator
275 This turns on debugging for the Xed Decoder
282 This turns on debugging for the halt instruction handler
285 bool "Device Manager"
289 This turns on debugging for the device manager
297 menu "BIOS Selection"
300 string "Path to pre-built ROMBIOS binary"
301 default "./bios/rombios/BIOS-bochs-latest"
303 This is the rombios that will be used for the guests
306 string "Path to pre-built VGABIOS binary"
307 default "./bios/vgabios/VGABIOS-lgpl-latest.bin"
309 This is the vgabios that will be used for the guests
311 config VMXASSIST_PATH
312 string "Path to pre-built VMXASSIST binary"
314 default "./bios/vmxassist/vmxassist.bin"
316 This is vmxassist image to boot real mode guests on
322 source "palacios/src/devices/Kconfig"