mainmenu "Palacios VMM Configuration" menu "Target Configuration" 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 SYMBIOTIC_SWAP_TELEMETRY bool "Enable Symbiotic Swap Telemetry" default n depends on TELEMETRY && SYMBIOTIC_SWAP help Enable the telemetry information for the symbiotic swap subsystem config PASSTHROUGH_VIDEO bool "Enable Passthrough Video" default y help Configures Palacios to map a guest's framebuffer directly to the hardware framebuffer 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 BUILT_IN_STDLIB bool "Enable Built in versions of stdlib functions" default n help Not all host OSes provide link targets for stdlib functions Palacios provides internal implementations of these functions, that you can select from this list config BUILT_IN_MEMSET bool "memset()" default n depends on BUILT_IN_STDLIB help This enables Palacios' internal implementation of memset config BUILT_IN_MEMCPY bool "memcpy()" default n depends on BUILT_IN_STDLIB help This enables Palacios' internal implementation of memcpy config BUILT_IN_MEMCMP bool "memcmp()" default n depends on BUILT_IN_STDLIB help This enables Palacios' internal implementation of memcmp config BUILT_IN_STRLEN bool "strlen()" default n depends on BUILT_IN_STDLIB help This enables Palacios' internal implementation of strlen config BUILT_IN_STRNLEN bool "strnlen()" default n depends on BUILT_IN_STDLIB help This enables Palacios' internal implementation of strnlen config BUILT_IN_STRCMP bool "strcmp()" default n depends on BUILT_IN_STDLIB help This enables Palacios' internal implementation of strcmp config BUILT_IN_STRNCMP bool "strncmp()" default n depends on BUILT_IN_STDLIB help This enables Palacios' internal implementation of strncmp config BUILT_IN_STRCAT bool "strcat()" default n depends on BUILT_IN_STDLIB help This enables Palacios' internal implementation of strcat config BUILT_IN_STRNCAT bool "strncat()" default n depends on BUILT_IN_STDLIB help This enables Palacios' internal implementation of strncat config BUILT_IN_STRCPY bool "strcpy()" default n depends on BUILT_IN_STDLIB help This enables Palacios' internal implementation of strcpy config BUILT_IN_STRNCPY bool "strncpy()" default n depends on BUILT_IN_STDLIB help This enables Palacios' internal implementation of strncpy config BUILT_IN_STRDUP bool "strdup()" default n depends on BUILT_IN_STDLIB help This enables Palacios' internal implementation of strdup config BUILT_IN_ATOI bool "atoi()" default n depends on BUILT_IN_STDLIB help This enables Palacios' internal implementation of atoi config BUILT_IN_STRCHR bool "strchr()" default n depends on BUILT_IN_STDLIB help This enables Palacios' internal implementation of strchr config BUILT_IN_STRRCHR bool "strrchr()" default n depends on BUILT_IN_STDLIB help This enables Palacios' internal implementation of strrchr config BUILT_IN_STRPBRK bool "strpbrk()" default n depends on BUILT_IN_STDLIB help This enables Palacios' internal implementation of strpbrk config BUILT_IN_STDIO bool "Enable Built in versions of stdio functions" default n help Not all host OSes provide link targets for stdio functions Palacios provides internal implementations of these functions, that you can select from this list config BUILT_IN_SPRINTF bool "sprintf()" default n depends on BUILT_IN_STDIO help This enables Palacios' internal implementation of sprintf config BUILT_IN_SNPRINTF bool "snprintf()" default n depends on BUILT_IN_STDIO help This enables Palacios' internal implementation of snprintf config BUILT_IN_VSPRINTF bool "vsprintf()" default n depends on BUILT_IN_STDIO help This enables Palacios' internal implementation of vsprintf config BUILT_IN_VSNPRINTF bool "vsnprintf()" default n depends on BUILT_IN_STDIO help This enables Palacios' internal implementation of vsnprintf config BUILT_IN_VSNRPRINTF bool "vsnrprintf()" default n depends on BUILT_IN_STDIO help This enables Palacios' internal implementation of vsnrprintf endmenu menu "Symbiotic Functions" config SYMBIOTIC bool "Enable Symbiotic Functionality" default n help Enable Symbiotic components of the VMM config SYMBIOTIC_SWAP bool "Symbiotic Swap" default n depends on SYMBIOTIC && EXPERIMENTAL help This enables the symbiotic swap architecture 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"