From: Robert Elliott <elliott@hp.com>
To: fweisbec@gmail.com, mingo@redhat.com,
linux-kernel@vger.kernel.org, rostedt@goodmis.org
Subject: [PATCH 0/2] ftrace: Add funcgraph_tail option
Date: Mon, 12 May 2014 17:18:30 -0500 [thread overview]
Message-ID: <20140512221729.14555.57686.stgit@beardog.cce.hp.com> (raw)
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):
Eliminate duplicate TRACE_GRAPH_PRINT_xx defines
In the function-graph tracer, add a funcgraph_tail option
Documentation/trace/ftrace.txt | 26 ++++++++++++++++++++++++++
kernel/trace/trace.h | 2 ++
kernel/trace/trace_functions_graph.c | 18 ++++++------------
3 files changed, 34 insertions(+), 12 deletions(-)
--
Rob Elliott HP Server Storage
next reply other threads:[~2014-05-12 22:19 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-05-12 22:18 Robert Elliott [this message]
2014-05-12 22:18 ` [PATCH 1/2] Eliminate duplicate TRACE_GRAPH_PRINT_xx defines Robert Elliott
2014-05-12 22:18 ` [PATCH 2/2] In the function-graph tracer, add a funcgraph_tail option Robert Elliott
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20140512221729.14555.57686.stgit@beardog.cce.hp.com \
--to=elliott@hp.com \
--cc=fweisbec@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=rostedt@goodmis.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome