blob: 4419030235d7fe257b9b53b7fa15e546fa95c43f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
|
menu "Debugging Options"
config DEBUG
bool "Developer Checks"
default n
---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 CRASH_DEBUG
bool "Crash Debugging Support"
depends on X86
---help---
If you want to attach gdb to Xen to debug Xen if it crashes
then say Y.
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 DEBUG_INFO
bool "Compile Xen with debug info"
default y
---help---
If you say Y here the resulting Xen will include debugging info
resulting in a larger binary image.
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 COVERAGE
bool "Code coverage support"
depends on !LIVEPATCH
select SUPPRESS_DUPLICATE_SYMBOL_WARNINGS if !ENFORCE_UNIQUE_SYMBOLS
---help---
Enable code coverage support.
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 HAS_DEVICE_TREE
---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 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
endmenu
|