mainmenu "Palacios VMM Configuration" menu "Target Configuration" config KITTEN bool "Set defaults needed for the Kitten OS" default y help This enables the necesary options to compile Palacios with Kitten config CRAY_XT bool "Red Storm (Cray XT3/XT4)" help Support for Cray XT3 and XT4 systems. config SVM bool "AMD SVM Support" default y help Compile with support for AMD SVM config VMX bool "Intel VMX Support" default y help Compile with support for Intel VMX config MULTITHREAD_OS bool "Compile for a multi threaded OS" default y help This allows Palacios to use OS thread mechanisms config MAX_CPUS int "Maximum number of cpus" range 1 255 default "16" help Specifies the maximum number of hardware cpus Palacios can support For uniprocessor environments, set this to 1 config SOCKET bool "Include Network Socket Support" default y help Enable networking support in Palacios config TELEMETRY bool "Enable VMM telemetry support" default n help Enable the telemetry framework in Palacios ----- This is a framwork that allows components of palacios to record information that is periodically reported to the log output. Telemetry is automatically collected for vmexits. Subsystem telemetry is configured separately config SHADOW_PAGING_TELEMETRY bool "Enable Shadow Paging Telemetry" default y depends on TELEMETRY help Enable telemetry information for shadow paging config INSTRUMENT_VMM bool "Enable VMM instrumentation" default n help Enable the instrumentation framework -------- This is much heavier weight than profiling config EXPERIMENTAL bool "Enable Experimental options" default n help This allows the selection of experimental features. This includes incomplete or unreviewed code. Only enable this feature if you are working on the features in question. IMPORTANT: Non-experimental code MUST NOT use, require, or rely on experimental features. Any code that violates this will be immediately deleted without warning. -- The purpose of this option is to allow features under development to be committed to the mainline to more easily track changes and provide access to multiple developers config VNET depends on EXPERIMENTAL bool "Enable Vnet in Palacios" default n help Enable the Vnet in Palacios config DEBUG_VNET depends on EXPERIMENTAL && VNET bool "Enable Vnet Debug in Palacios" default n help Enable the Vnet debug in Palacios config VNET_PROFILE depends on EXPERIMENTAL && VNET bool "Enable Vnet Profiling in Palacios" default n help Enable the Vnet performance profiling in Palacios config LINUX_VIRTIO_VNET bool "Enable Virtio VNET interface" default n depends on PCI && EXPERIMENTAL && VNET help Enable the Virtio VNET interface config DEBUG_LINUX_VIRTIO_VNET bool "VNET Virtio Device Debugging" default n depends on LINUX_VIRTIO_VNET && DEBUG_ON help Enable debugging for the VNET Virtio Device endmenu source "Kconfig.stdlibs" menu "Virtual Paging" config SHADOW_PAGING bool "Enable shadow paging" default y help Enables shadow paging for virtual machines config SHADOW_PAGING_VTLB bool "Virtual TLB" default y depends on SHADOW_PAGING help Enables Virtual TLB implemenation for shadow paging config DEBUG_SHDW_PG_VTLB bool "Enable VTLB debugging" default n depends on SHADOW_PAGING_VTLB help Enables debugging messages for VTLB implementation endmenu menu "Symbiotic Functions" config SYMBIOTIC bool "Enable Symbiotic Functionality" default n help Enable Symbiotic components of the VMM. This includes the SymSpy interface. config SYMCALL bool "Symbiotic upcalls" default n depends on SYMBIOTIC && EXPERIMENTAL help Enables the Symbiotic upcall interface config SWAPBYPASS bool "SwapBypass" default n depends on SYMBIOTIC && SYMCALL && EXPERIMENTAL help This enables the SwapBypass architecture config SWAPBYPASS_TELEMETRY bool "Enable SwapBypass Telemetry" default n depends on TELEMETRY && SWAPBYPASS help Enable the telemetry information for the SwapBypass subsystem menuconfig SYMMOD bool "Symbiotic Modules" default n depends on EXPERIMENTAL # depends on SYMBIOTIC help Enable Symbiotic module loading if SYMMOD source "modules/Kconfig" endif endmenu menu "Debug configuration" config CONFIG_DEBUG_INFO bool "Compile with Debug information" default n help This adds the -g flag to the compilation flags ## Is unwind information useful config DEBUG_ON bool "Enable Debugging" default y help This turns on debugging support config DEBUG_SHADOW_PAGING bool "Shadow paging" default n depends on DEBUG_ON help This turns on debugging for the shadow paging system config DEBUG_NESTED_PAGING bool "Nested paging" default n depends on DEBUG_ON help This turns on debugging for the nested paging system config DEBUG_CTRL_REGS bool "Control registers" default n depends on DEBUG_ON help This turns on debugging for the control register handlers config DEBUG_INTERRUPTS bool "Interrupts" default n depends on DEBUG_ON help This turns on debugging for the interrupt system config DEBUG_IO bool "IO" default n depends on DEBUG_ON help This turns on debugging for the IO handlers config DEBUG_EMULATOR bool "Instruction Emulator" default n depends on DEBUG_ON help This turns on debugging for the Instruction Emulator config DEBUG_XED bool "XED" default n depends on DEBUG_ON help This turns on debugging for the Xed Decoder config DEBUG_HALT bool "Halt" default n depends on DEBUG_ON help This turns on debugging for the halt instruction handler config DEBUG_DEV_MGR bool "Device Manager" default n depends on DEBUG_ON help This turns on debugging for the device manager endmenu menu "BIOS Selection" config ROMBIOS_PATH string "Path to pre-built ROMBIOS binary" default "./bios/rombios/BIOS-bochs-latest" help This is the rombios that will be used for the guests config VGABIOS_PATH string "Path to pre-built VGABIOS binary" default "./bios/vgabios/VGABIOS-lgpl-latest.bin" help This is the vgabios that will be used for the guests config VMXASSIST_PATH string "Path to pre-built VMXASSIST binary" depends on VMX default "./bios/vmxassist/vmxassist.bin" help This is vmxassist image to boot real mode guests on Intel VMX Platforms endmenu source "palacios/src/devices/Kconfig"