diff options
author | Josef Bacik <jbacik@fb.com> | 2014-09-24 16:14:12 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2020-10-01 13:12:32 +0200 |
commit | 2e5211162ff9aef24c9568fcc7aafd6e2edd41ec (patch) | |
tree | 74aa26629a9953e9dc085b522acd110ea49d2fa1 /kernel | |
parent | 98ee679c3ad14cfd73cdaafd006e025714577559 (diff) | |
download | linux-stable-2e5211162ff9aef24c9568fcc7aafd6e2edd41ec.tar.gz linux-stable-2e5211162ff9aef24c9568fcc7aafd6e2edd41ec.tar.bz2 linux-stable-2e5211162ff9aef24c9568fcc7aafd6e2edd41ec.zip |
tracing: Set kernel_stack's caller size properly
[ Upstream commit cbc3b92ce037f5e7536f6db157d185cd8b8f615c ]
I noticed when trying to use the trace-cmd python interface that reading the raw
buffer wasn't working for kernel_stack events. This is because it uses a
stubbed version of __dynamic_array that doesn't do the __data_loc trick and
encode the length of the array into the field. Instead it just shows up as a
size of 0. So change this to __array and set the len to FTRACE_STACK_ENTRIES
since this is what we actually do in practice and matches how user_stack_trace
works.
Link: http://lkml.kernel.org/r/1411589652-1318-1-git-send-email-jbacik@fb.com
Signed-off-by: Josef Bacik <jbacik@fb.com>
[ Pulled from the archeological digging of my INBOX ]
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/trace/trace_entries.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/trace/trace_entries.h b/kernel/trace/trace_entries.h index e3a658bac10f..ff91acff7294 100644 --- a/kernel/trace/trace_entries.h +++ b/kernel/trace/trace_entries.h @@ -179,7 +179,7 @@ FTRACE_ENTRY(kernel_stack, stack_entry, F_STRUCT( __field( int, size ) - __dynamic_array(unsigned long, caller ) + __array( unsigned long, caller, FTRACE_STACK_ENTRIES ) ), F_printk("\t=> (" IP_FMT ")\n\t=> (" IP_FMT ")\n\t=> (" IP_FMT ")\n" |