mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-10 15:14:43 +00:00
trace: make call depth limit customizable
Up to now we had hard coded values for the call depth up to which trace records are created: 200 for early tracing, 15 thereafter. UEFI applications reach a call depth of 80 or above. Provide customizing settings for the call trace depth limit and the early call trace depth limit. Use the old values as defaults. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
a2fa38da20
commit
da0fb5fdd4
2 changed files with 17 additions and 2 deletions
15
lib/Kconfig
15
lib/Kconfig
|
@ -192,6 +192,13 @@ config TRACE_BUFFER_SIZE
|
|||
the size is too small then 'trace stats' will show a message saying
|
||||
how many records were dropped due to buffer overflow.
|
||||
|
||||
config TRACE_CALL_DEPTH_LIMIT
|
||||
int "Trace call depth limit"
|
||||
depends on TRACE
|
||||
default 15
|
||||
help
|
||||
Sets the maximum call depth up to which function calls are recorded.
|
||||
|
||||
config TRACE_EARLY
|
||||
bool "Enable tracing before relocation"
|
||||
depends on TRACE
|
||||
|
@ -209,6 +216,14 @@ config TRACE_EARLY_SIZE
|
|||
Sets the size of the early trace buffer in bytes. This is used to hold
|
||||
tracing information before relocation.
|
||||
|
||||
config TRACE_EARLY_CALL_DEPTH_LIMIT
|
||||
int "Early trace call depth limit"
|
||||
depends on TRACE_EARLY
|
||||
default 200
|
||||
help
|
||||
Sets the maximum call depth up to which function calls are recorded
|
||||
during early tracing.
|
||||
|
||||
config TRACE_EARLY_ADDR
|
||||
hex "Address of early trace buffer in U-Boot"
|
||||
depends on TRACE_EARLY
|
||||
|
|
|
@ -376,7 +376,7 @@ int __attribute__((no_instrument_function)) trace_init(void *buff,
|
|||
add_textbase();
|
||||
|
||||
puts("trace: enabled\n");
|
||||
hdr->depth_limit = 15;
|
||||
hdr->depth_limit = CONFIG_TRACE_CALL_DEPTH_LIMIT;
|
||||
trace_enabled = 1;
|
||||
trace_inited = 1;
|
||||
|
||||
|
@ -410,7 +410,7 @@ int __attribute__((no_instrument_function)) trace_early_init(void)
|
|||
hdr->ftrace = (struct trace_call *)((char *)hdr + needed);
|
||||
hdr->ftrace_size = (buff_size - needed) / sizeof(*hdr->ftrace);
|
||||
add_textbase();
|
||||
hdr->depth_limit = 200;
|
||||
hdr->depth_limit = CONFIG_TRACE_EARLY_CALL_DEPTH_LIMIT;
|
||||
printf("trace: early enable at %08x\n", CONFIG_TRACE_EARLY_ADDR);
|
||||
|
||||
trace_enabled = 1;
|
||||
|
|
Loading…
Reference in a new issue