ftrace: Add funcgraph-tail option
Get series with b4
b4 am [email protected]Versions newest first · linked by author and title
- v1 Latest posting 2/22 patches 0 repliesNew
- v1 posting 1/22 patches 0 repliesSuperseded
Patches in v1 posting 2/2 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/2 | ftrace: Eliminate duplicate TRACE_GRAPH_PRINT_xx defineskernel/ kernel/ | +1 | 0 replies | |
| 2/2 | ftrace: Add funcgraph_tail option to print function name after closing bracesDocumentation/ kernel/ kernel/ | +33 | 0 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [PATCH RESEND 0/2] ftrace: Add funcgraph-tail option
Using ftrace function-graph to examine the times consumed by functions, the time shows up on the line where the call is made if no other traceable functions were called by that function:
11) 0.672 us | cmd_alloc [hpsa]();
but the time shows up down by the } if the were other traceable functions called by that function:
11) | cmd_alloc [hpsa]() {
11) 0.129 us | cmd_free [hpsa]();
11) 0.106 us | cmd_free [hpsa]();
11) 2.014 us | }On its own, the } line doesn't indicate which function it is closing, so grep cannot be used to search for all the times for this function. You have to write a parser.
The function name does get printed on those lines when the start of the function is off the trace.
This patch series adds a funcgraph-tail option to do that in all cases.
echo 1 > /sys/kernel/debug/tracing/options/funcgraph-tail or
echo funcgraph-tail > /sys/kernel/debug/tracing/trace_options yields:
11) | hpsa_scsi_ioaccel_raid_map [hpsa]() {
11) | hpsa_scsi_ioaccel_queue_command [hpsa]() {
11) | hpsa_scsi_ioaccel2_queue_command [hpsa]() {
11) 0.067 us | fixup_ioaccel_cdb [hpsa]();
11) 0.053 us | set_encrypt_ioaccel2 [hpsa]();
11) 0.199 us | enqueue_cmd_and_start_io [hpsa]();
11) 1.952 us | } /* hpsa_scsi_ioaccel2_queue_command [hpsa] */
11) 2.501 us | } /* hpsa_scsi_ioaccel_queue_command [hpsa] */
11) 3.093 us | } /* hpsa_scsi_ioaccel_raid_map [hpsa] */
11) 4.667 us | } /* hpsa_scsi_queue_command [hpsa] */echo 0 > /sys/kernel/debug/tracing/options/funcgraph-tail or
echo nofuncgraph-tail > /sys/kernel/debug/tracing/trace_options (which is the default setting) still yields:
11) | hpsa_scsi_ioaccel_raid_map [hpsa]() {
11) | hpsa_scsi_ioaccel_queue_command [hpsa]() {
11) | hpsa_scsi_ioaccel2_queue_command [hpsa]() {
11) 0.067 us | fixup_ioaccel_cdb [hpsa]();
11) 0.053 us | set_encrypt_ioaccel2 [hpsa]();
11) 0.199 us | enqueue_cmd_and_start_io [hpsa]();
11) 1.952 us | }
11) 2.501 us | }
11) 3.093 us | }
11) 4.667 us | }---
Robert Elliott (2):
ftrace: Eliminate duplicate TRACE_GRAPH_PRINT_xx defines
ftrace: Add funcgraph_tail option to print function name after closing braces
Documentation/trace/ftrace.txt | 26 ++++++++++++++++++++++++++ kernel/trace/trace.h | 2 ++ kernel/trace/trace_functions_graph.c | 18 ++++++------------ 3 files changed, 34 insertions(+), 12 deletions(-)
Signature · 1 line
Rob Elliott, HP Server Storage