X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=Kconfig;h=9c9dfe2368126745ebe300fa3b20e7a17f9a45f6;hb=c17cafcb6db943bd5bbb31d86f0392c113b2d668;hp=8518fd8698ddaa0da89204783e95bfad87b31008;hpb=281d544b5352321631fb51c394e1ae0a9680b752;p=palacios.git diff --git a/Kconfig b/Kconfig index 8518fd8..9c9dfe2 100644 --- a/Kconfig +++ b/Kconfig @@ -102,11 +102,29 @@ config V3_DECODER help This selects the internal V3Vee x86 decoder +config QUIX86 + bool "QUIX86 decoder" + help + This selects the QUIX86 decoder library + +config QUIX86_DEBUG + bool "QUIX86 decoder debug version" + help + This selects the QUIX86 decoder library compiled w/o optimization + and with debug info endchoice menu "Supported host OS features" - + +config MEM_BLOCK_SIZE + int "Allocation size for underlying VM memory" + default 134217728 + help + This is the default size in bytes of the underlying memory allocations used for the base memory regions. + A good default value is 128MB (134217728 or 0x8000000 bytes). Note that the host interface must be able + to provide contiguous memory of at least this size in order for VMs to typically work. This + value can be overriden via a load-time option, provided the host supports this. config ALIGNED_PG_ALLOC bool "Host support for aligned page allocations" @@ -147,7 +165,21 @@ config SHADOW_PAGING_TELEMETRY help Enable telemetry information for shadow paging +config PMU_TELEMETRY + bool "Enable PMU telemetry" + default n + depends on TELEMETRY && HOST_PMU + help + Enable telemetry information for a range of PMU counters + This causes the currently configured PMU counts to be printed +config PWRSTAT_TELEMETRY + bool "Enable power statistics telemetry" + default n + depends on TELEMETRY && HOST_PWRSTAT + help + Enable telemetry information for power/energy counters + config EXPERIMENTAL bool "Enable Experimental options" @@ -165,8 +197,21 @@ config CHECKPOINT bool "Enable Checkpointing" default n help - Temporary option to enable experimental checkpoint code + Enable checkpointing functionality (save/load VMs) +config LIVE_MIGRATION + bool "Enable Live Migration" + depends on CHECKPOINT + default n + help + Enable live migration functionality (send/receive VMs) + +config DEBUG_CHECKPOINT + bool "Enable Checkpointing and Live Migration Debugging Output" + depends on CHECKPOINT + default n + help + Generate output from the debugging statements in checkpointing and live migration endmenu @@ -209,41 +254,6 @@ config SHADOW_PAGING_CACHE1 endmenu - - -menu "Time Management" -config TIME_DILATION - bool "Control Guest/Host Time Offseting" - default n - depends on EXPERIMENTAL - help - Controls the relative speeds of the guest and host processor - to allow the VM to provide the illusion of the guest seeing time - pass at a different rate than the host system does. - -config TIME_HIDE_VM_COST - bool "Hide VMM Run Cost" - default n - depends on EXPERIMENTAL - help - Offset guest time from host time sufficiently to hide the cost of - running in the virtual machine. This can aid the consistency of - time between multiple timers, but can cause the guest to run - a good bit slower than the host in VM-intensive parts of the code. - -config TIME_VIRTUALIZE_TSC - bool "Fully virtualize guest TSC" - default n - depends on EXPERIMENTAL - help - Virtualize the processor time stamp counter in the guest, - generally increasing consistency between various time sources - but also potentially making guest time run slower than real time. - -endmenu - - - menu "Symbiotic Functions" config SYMBIOTIC @@ -303,8 +313,9 @@ config DEBUG_VNET endmenu -menu "Debug configuration" +source "palacios/src/gears/Kconfig" +menu "Debug configuration" ## Is unwind information useful @@ -368,6 +379,20 @@ config DEBUG_TIME help This turns on debugging of system time virtualization +config DEBUG_SCHEDULER + bool "Scheduler" + default n + depends on DEBUG_ON + help + This turns on debugging for scheduler + +config DEBUG_CPU_MAPPER + bool "CPU Mapper" + default n + depends on DEBUG_ON + help + This turns on debugging for CPU Mapper + config DEBUG_IO bool "IO" default n @@ -398,6 +423,13 @@ config DEBUG_HALT help This turns on debugging for the halt instruction handler +config DEBUG_MWAIT + bool "MWAIT/MONITOR" + default n + depends on DEBUG_ON + help + This turns on debugging for the mwait and monitor instruction handlers + config DEBUG_DEV_MGR bool "Device Manager" default n @@ -412,23 +444,97 @@ config DEBUG_MEM_ERRORS help This turns on debugging for memory translations and lookups +config DEBUG_LOCKS + bool "Lock debugging (if host supports it)" + default n + depends on DEBUG_ON + help + This turns on lock debugging for locks in Palacios and in its host-specifc glue code. This requires host support. + +config DEBUG_MEM_ALLOC + bool "Memory allocation debugging (if host supports it)" + default n + depends on DEBUG_ON + help + This turns on memory allocation debugging in Palacios, using the mechanisms provided by the host + + endmenu menu "BIOS Selection" -config ROMBIOS_PATH - string "Path to pre-built ROMBIOS binary" +choice + prompt "Boot Code Selection" + default SEABIOS + help + Select which BIOSes to map into the default PC Class Hardware Configuration + +config SEABIOS + bool "Use the SEABIOS and SEABIOS-VGA Boot Code" + help + Use the SEABIOS and SEABIOS-VGA Boot code + + +config BOCHSBIOS + bool "Use the BOCHS BIOS and BOCHS BIOS-compatible VGA Boot Code" + help + Use the BOCHS BIOS and BOCHS-BIOS-compatible VGA Boot Code + + +config OTHERBIOS + bool "Use a user-specified BIOS" + help + Use a user-specified BIOS + + +endchoice + + +config SEABIOS_PATH + string "Path to pre-built SEABIOS binary" + depends on SEABIOS + default "./bios/seabios/out/bios.bin" + help + Path to the SEABIOS binary to use + +config SEABIOSVGA_PATH + string "Path to pre-built SEABIOS-VGA binary" + depends on SEABIOS + default "./bios/seabios-vga/VGABIOS-lgpl-latest.bin" + help + This is the SEABIOS-compatible vgabios that will be used for the guest + +config BOCHSBIOS_PATH + string "Path to pre-built BOCHS BIOS binary" + depends on BOCHSBIOS 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" +config BOCHSBIOSVGA_PATH + string "Path to pre-built BOCHS-compatible VGABIOS binary" + depends on BOCHSBIOS default "./bios/vgabios/VGABIOS-lgpl-latest.bin" help This is the vgabios that will be used for the guests +config OTHERBIOS_PATH + string "Path to user-specified Boot Code" + depends on OTHERBIOS + help + This is a completely user-determined blob that will be mapped into the guest + No VGA BIOS will be mapped! + +config BIOS_START + hex "Starting address (linear address) of BIOS" + range 0xe0000 0xe0000 if SEABIOS + range 0xf0000 0xf0000 if BOCHSBIOS + help + This is the starting address (linear address) of the BIOS code + + + config VMXASSIST_PATH string "Path to pre-built VMXASSIST binary" depends on VMX