aboutsummaryrefslogtreecommitdiffstats
path: root/litmus/Kconfig
diff options
context:
space:
mode:
authorBjoern Brandenburg <bbb@mpi-sws.org>2015-08-09 07:18:46 -0400
committerBjoern Brandenburg <bbb@mpi-sws.org>2017-05-26 17:12:24 -0400
commitf298dae81d90b00d47be0ccb94a47be1861b5bf1 (patch)
tree18d8e4da47f406521a11bee3a08403bd4bbed602 /litmus/Kconfig
parent561d64d1856868e056b7530cb08fd12a4043190a (diff)
Add TRACE() debug tracing support
This patch adds the infrastructure for the TRACE() debug macro. Conflicts: kernel/printk.c
Diffstat (limited to 'litmus/Kconfig')
-rw-r--r--litmus/Kconfig53
1 files changed, 53 insertions, 0 deletions
diff --git a/litmus/Kconfig b/litmus/Kconfig
index 0c7e06b922a1..e4624ee20adc 100644
--- a/litmus/Kconfig
+++ b/litmus/Kconfig
@@ -49,6 +49,59 @@ config SCHED_OVERHEAD_TRACE_SHIFT
49 24 => 512 MB 49 24 => 512 MB
50 26 => 2G MB 50 26 => 2G MB
51 51
52config SCHED_DEBUG_TRACE
53 bool "TRACE() debugging"
54 default n
55 help
56 Include support for sched_trace_log_messageg(), which is used to
57 implement TRACE(). If disabled, no TRACE() messages will be included
58 in the kernel, and no overheads due to debugging statements will be
59 incurred by the scheduler. Disable if the overhead is not acceptable
60 (e.g. benchmarking).
61
62 Say Yes for debugging.
63 Say No for overhead tracing.
64
65config SCHED_DEBUG_TRACE_SHIFT
66 int "Buffer size for TRACE() buffer"
67 depends on SCHED_DEBUG_TRACE
68 range 14 22
69 default 18
70 help
71
72 Select the amount of memory needed per for the TRACE() buffer, as a
73 power of two. The TRACE() buffer is global and statically allocated. If
74 the buffer is too small, there will be holes in the TRACE() log if the
75 buffer-flushing task is starved.
76
77 The default should be sufficient for most systems. Increase the buffer
78 size if the log contains holes. Reduce the buffer size when running on
79 a memory-constrained system.
80
81 Examples: 14 => 16KB
82 18 => 256KB
83 20 => 1MB
84
85 This buffer is exported to usespace using a misc device as
86 'litmus/log'. On a system with default udev rules, a corresponding
87 character device node should be created at /dev/litmus/log. The buffer
88 can be flushed using cat, e.g., 'cat /dev/litmus/log > my_log_file.txt'.
89
90config SCHED_DEBUG_TRACE_CALLER
91 bool "Include [function@file:line] tag in TRACE() log"
92 depends on SCHED_DEBUG_TRACE
93 default n
94 help
95 With this option enabled, TRACE() prepends
96
97 "[<function name>@<filename>:<line number>]"
98
99 to each message in the debug log. Enable this to aid in figuring out
100 what was called in which order. The downside is that it adds a lot of
101 clutter.
102
103 If unsure, say No.
104
52endmenu 105endmenu
53 106
54endmenu 107endmenu