menu "Target Configuration"
+
config CRAY_XT
bool "Red Storm (Cray XT3/XT4)"
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
-config PROFILE_VMM
- bool "Enable VMM profiling support"
- default y
+
+config TELEMETRY
+ bool "Enable VMM telemetry support"
+ default n
help
- Enable the profiling framework in Palacios
+ 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 file
+ 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"
--------
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 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_MEMMOVE
+ bool "memmove()"
+ default n
+ depends on BUILT_IN_STDLIB
+ help
+ This enables Palacios' internal implementation of memmove
+
+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_STRCASECMP
+ bool "strcasecmp()"
+ default n
+ depends on BUILT_IN_STDLIB
+ help
+ This enables Palacios' internal implementation of strcasecmp
+
+config BUILT_IN_STRNCMP
+ bool "strncmp()"
+ default n
+ depends on BUILT_IN_STDLIB
+ help
+ This enables Palacios' internal implementation of strncmp
+
+config BUILT_IN_STRNCASECMP
+ bool "strncasecmp()"
+ default n
+ depends on BUILT_IN_STDLIB
+ help
+ This enables Palacios' internal implementation of strncasecmp
+
+
+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_STRSTR
+ bool "strstr()"
+ default n
+ depends on BUILT_IN_STDLIB
+ help
+ This enables Palacios internal implementation of strstr
+
+
+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
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