mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 02:01:24 +01:00
Moving forward the idea is for there to be: 1. Basic DT support: used by dom0less/hyperlaunch. 2. Full DT support: used for device discovery and HW setup. Rename HAS_DEVICE_TREE to HAS_DEVICE_TREE_DISCOVERY to describe (2) and create a new DEVICE_TREE_PARSE to describe (1). Have DEVICE_TREE_PARSE selected by both HAS_DEVICE_TREE_DISCOVERY and DOM0LESS_BOOT. Add a dependency on STATIC_MEMORY for discovery, as it relies on the memory map itself being described on the DTB. Signed-off-by: Alejandro Vallejo <alejandro.garciavallejo@amd.com> Acked-by: Jan Beulich <jbeulich@suse.com> #iommu Reviewed-by: Oleksii Kurochko<oleksii.kurochko@gmail.com> # riscv Acked-by: Daniel P. Smith <dpsmith@apertussolutions.com>
159 lines
4.4 KiB
Plaintext
159 lines
4.4 KiB
Plaintext
|
|
menu "Debugging Options"
|
|
|
|
config DEBUG
|
|
bool "Developer Checks"
|
|
default y
|
|
help
|
|
If you say Y here this will enable developer checks such as asserts
|
|
and extra printks. This option is intended for development purposes
|
|
only, and not for production use.
|
|
|
|
You probably want to say 'N' here.
|
|
|
|
if DEBUG || EXPERT
|
|
|
|
config GDBSX
|
|
bool "Guest debugging with gdbsx"
|
|
depends on X86
|
|
default y
|
|
help
|
|
If you want to enable support for debugging guests from dom0 via
|
|
gdbsx then say Y.
|
|
|
|
config FRAME_POINTER
|
|
bool "Compile Xen with frame pointers"
|
|
default DEBUG
|
|
help
|
|
If you say Y here the resulting Xen will be slightly larger and
|
|
maybe slower, but it gives very useful debugging information
|
|
in case of any Xen bugs.
|
|
|
|
config SELF_TESTS
|
|
bool "Extra self-testing"
|
|
default DEBUG
|
|
help
|
|
Enable extra unit and functional testing.
|
|
|
|
config COVERAGE
|
|
bool "Code coverage support"
|
|
depends on SYSCTL && !LIVEPATCH
|
|
select SUPPRESS_DUPLICATE_SYMBOL_WARNINGS if !ENFORCE_UNIQUE_SYMBOLS
|
|
help
|
|
Enable code coverage support.
|
|
|
|
If unsure, say N here.
|
|
|
|
config CONDITION_COVERAGE
|
|
bool "Condition coverage support"
|
|
depends on COVERAGE && CC_HAS_MCDC
|
|
help
|
|
Enable condition coverage support. Used for collecting MC/DC
|
|
(Modified Condition/Decision Coverage) metrics.
|
|
|
|
If unsure, say N here.
|
|
|
|
config DEBUG_LOCK_PROFILE
|
|
bool "Lock Profiling"
|
|
select DEBUG_LOCKS
|
|
help
|
|
Lock profiling allows you to see how often locks are taken and blocked.
|
|
You can use serial console to print (and reset) using 'l' and 'L'
|
|
respectively, or the 'xenlockprof' tool.
|
|
|
|
config DEBUG_LOCKS
|
|
bool "Lock debugging"
|
|
default DEBUG
|
|
help
|
|
Enable debugging features of lock handling. Some additional
|
|
checks will be performed when acquiring and releasing locks.
|
|
|
|
config PERF_COUNTERS
|
|
bool "Performance Counters"
|
|
help
|
|
Enables software performance counters that allows you to analyze
|
|
bottlenecks in the system. To access this data you can use serial
|
|
console to print (and reset) using 'p' and 'P' respectively, or
|
|
the 'xenperf' tool.
|
|
|
|
config PERF_ARRAYS
|
|
bool "Performance Counter Array Histograms"
|
|
depends on PERF_COUNTERS
|
|
help
|
|
Enables software performance counter array histograms.
|
|
|
|
|
|
config VERBOSE_DEBUG
|
|
bool "Verbose debug messages"
|
|
default DEBUG
|
|
help
|
|
Guest output from HYPERVISOR_console_io and hypervisor parsing
|
|
ELF images (dom0) will be logged in the Xen ring buffer.
|
|
|
|
config DEVICE_TREE_DEBUG
|
|
bool "Device tree debug messages"
|
|
depends on DEVICE_TREE_PARSE
|
|
help
|
|
Device tree parsing and DOM0 device tree building messages are
|
|
logged in the Xen ring buffer.
|
|
If unsure, say N here.
|
|
|
|
config SCRUB_DEBUG
|
|
bool "Page scrubbing test"
|
|
default DEBUG
|
|
help
|
|
Verify that pages that need to be scrubbed before being allocated to
|
|
a guest are indeed scrubbed.
|
|
|
|
config UBSAN
|
|
bool "Undefined behaviour sanitizer"
|
|
depends on HAS_UBSAN
|
|
help
|
|
Enable undefined behaviour sanitizer. It uses compiler to insert code
|
|
snippets so that undefined behaviours in C are detected during runtime.
|
|
This requires a UBSAN capable compiler and it is a debug only feature.
|
|
|
|
If unsure, say N here.
|
|
|
|
config UBSAN_FATAL
|
|
bool "Panic on UBSAN failure"
|
|
depends on UBSAN
|
|
help
|
|
Enabling this option will cause Xen to panic when an undefined behavior
|
|
is detected by UBSAN. If unsure, say N here.
|
|
|
|
config DEBUG_TRACE
|
|
bool "Debug trace support"
|
|
help
|
|
Debug trace enables to record debug trace messages which are printed
|
|
either directly to the console or are printed to console in case of
|
|
a system crash.
|
|
|
|
config XMEM_POOL_POISON
|
|
bool "Poison free xenpool blocks"
|
|
default DEBUG
|
|
help
|
|
Poison free blocks with 0xAA bytes and verify them when a block is
|
|
allocated in order to spot use-after-free issues.
|
|
|
|
source "arch/$(SRCARCH)/Kconfig.debug"
|
|
|
|
endif # DEBUG || EXPERT
|
|
|
|
config DEBUG_INFO
|
|
bool "Compile Xen with debug info"
|
|
default DEBUG || LIVEPATCH
|
|
help
|
|
Say Y here if you want to build Xen with debug information. This
|
|
information is needed e.g. for doing crash dump analysis of the
|
|
hypervisor via the "crash" tool.
|
|
Saying Y will increase the size of the xen-syms and xen.efi
|
|
binaries. In case the space on the EFI boot partition is rather
|
|
limited, you may want to install a stripped variant of xen.efi in
|
|
the EFI boot partition (look for "INSTALL_EFI_STRIP" in
|
|
docs/misc/efi.pandoc for more information - when not using
|
|
"make install-xen" for installing xen.efi, stripping needs to be
|
|
done outside the Xen build environment).
|
|
|
|
endmenu
|