mirror of
https://github.com/torvalds/linux.git
synced 2026-06-07 22:14:04 +02:00
tracing: Set kernel_stack's caller size properly
[ Upstream commit cbc3b92ce0 ]
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>
This commit is contained in:
parent
4d04a4da59
commit
72913876dc
|
|
@ -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"
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user