From: tip-bot for Leo Yan <tipbot@zytor.com>
To: linux-tip-commits@vger.kernel.org
Cc: mingo@kernel.org, peterz@infradead.org,
alexander.shishkin@linux.intel.com, leo.yan@linaro.org,
jolsa@redhat.com, namhyung@kernel.org,
linux-kernel@vger.kernel.org, tglx@linutronix.de,
mathieu.poirier@linaro.org, acme@redhat.com,
robert.walker@arm.com, mike.leach@linaro.org, hpa@zytor.com,
kim.phillips@arm.com
Subject: [tip:perf/core] perf cs-etm: Generate branch sample for CS_ETM_TRACE_ON packet
Date: Thu, 2 Aug 2018 01:14:39 -0700 [thread overview]
Message-ID: <tip-14a85b1eca348e00a9f209b522f94ec3ead94acb@git.kernel.org> (raw)
In-Reply-To: <1531295145-596-7-git-send-email-leo.yan@linaro.org>
Commit-ID: 14a85b1eca348e00a9f209b522f94ec3ead94acb
Gitweb: https://git.kernel.org/tip/14a85b1eca348e00a9f209b522f94ec3ead94acb
Author: Leo Yan <leo.yan@linaro.org>
AuthorDate: Wed, 11 Jul 2018 15:45:45 +0800
Committer: Arnaldo Carvalho de Melo <acme@redhat.com>
CommitDate: Tue, 31 Jul 2018 11:22:50 -0300
perf cs-etm: Generate branch sample for CS_ETM_TRACE_ON packet
CS_ETM_TRACE_ON packet itself can give the info that there have a
discontinuity in the trace, this patch is to add branch sample for
CS_ETM_TRACE_ON packet if it is inserted in the middle of CS_ETM_RANGE
packets; as result we can have hint for the trace discontinuity.
Signed-off-by: Leo Yan <leo.yan@linaro.org>
Reviewed-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Kim Phillips <kim.phillips@arm.com>
Cc: Mike Leach <mike.leach@linaro.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Robert Walker <robert.walker@arm.com>
Cc: linux-arm-kernel@lists.infradead.org
Link: http://lkml.kernel.org/r/1531295145-596-7-git-send-email-leo.yan@linaro.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/util/cs-etm.c | 24 +++++++++++++++++-------
1 file changed, 17 insertions(+), 7 deletions(-)
diff --git a/tools/perf/util/cs-etm.c b/tools/perf/util/cs-etm.c
index d3b794286bca..2ae640257fdb 100644
--- a/tools/perf/util/cs-etm.c
+++ b/tools/perf/util/cs-etm.c
@@ -910,13 +910,23 @@ static int cs_etm__sample(struct cs_etm_queue *etmq)
etmq->period_instructions = instrs_over;
}
- if (etm->sample_branches &&
- etmq->prev_packet &&
- etmq->prev_packet->sample_type == CS_ETM_RANGE &&
- etmq->prev_packet->last_instr_taken_branch) {
- ret = cs_etm__synth_branch_sample(etmq);
- if (ret)
- return ret;
+ if (etm->sample_branches && etmq->prev_packet) {
+ bool generate_sample = false;
+
+ /* Generate sample for tracing on packet */
+ if (etmq->prev_packet->sample_type == CS_ETM_TRACE_ON)
+ generate_sample = true;
+
+ /* Generate sample for branch taken packet */
+ if (etmq->prev_packet->sample_type == CS_ETM_RANGE &&
+ etmq->prev_packet->last_instr_taken_branch)
+ generate_sample = true;
+
+ if (generate_sample) {
+ ret = cs_etm__synth_branch_sample(etmq);
+ if (ret)
+ return ret;
+ }
}
if (etm->sample_branches || etm->synth_opts.last_branch) {
next prev parent reply other threads:[~2018-08-02 8:15 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-07-11 7:45 [PATCH v2 0/6] perf cs-etm: Fix tracing packet handling and minor refactoring Leo Yan
2018-07-11 7:45 ` Leo Yan
2018-07-11 7:45 ` [PATCH v2 1/6] perf cs-etm: Introduce invalid address macro Leo Yan
2018-07-11 7:45 ` Leo Yan
2018-07-11 7:45 ` [PATCH v2 2/6] perf cs-etm: Bail out immediately for instruction sample failure Leo Yan
2018-07-11 7:45 ` Leo Yan
2018-07-11 7:45 ` [PATCH v2 3/6] perf cs-etm: Fix start tracing packet handling Leo Yan
2018-07-11 7:45 ` Leo Yan
2018-08-02 8:13 ` [tip:perf/core] " tip-bot for Leo Yan
2018-07-11 7:45 ` [PATCH v2 4/6] perf cs-etm: Support dummy address value for CS_ETM_TRACE_ON packet Leo Yan
2018-07-11 7:45 ` Leo Yan
2018-08-02 8:13 ` [tip:perf/core] " tip-bot for Leo Yan
2018-07-11 7:45 ` [PATCH v2 5/6] perf cs-etm: Generate branch sample when receiving a " Leo Yan
2018-07-11 7:45 ` Leo Yan
2018-08-02 8:14 ` [tip:perf/core] " tip-bot for Leo Yan
2018-07-11 7:45 ` [PATCH v2 6/6] perf cs-etm: Generate branch sample for " Leo Yan
2018-07-11 7:45 ` Leo Yan
2018-08-02 8:14 ` tip-bot for Leo Yan [this message]
2018-07-23 1:35 ` [PATCH v2 0/6] perf cs-etm: Fix tracing packet handling and minor refactoring leo.yan at linaro.org
2018-07-23 1:35 ` leo.yan
2018-07-31 14:24 ` Arnaldo Carvalho de Melo
2018-07-31 14:24 ` Arnaldo Carvalho de Melo
2018-07-31 14:47 ` leo.yan at linaro.org
2018-07-31 14:47 ` leo.yan
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=tip-14a85b1eca348e00a9f209b522f94ec3ead94acb@git.kernel.org \
--to=tipbot@zytor.com \
--cc=acme@redhat.com \
--cc=alexander.shishkin@linux.intel.com \
--cc=hpa@zytor.com \
--cc=jolsa@redhat.com \
--cc=kim.phillips@arm.com \
--cc=leo.yan@linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-tip-commits@vger.kernel.org \
--cc=mathieu.poirier@linaro.org \
--cc=mike.leach@linaro.org \
--cc=mingo@kernel.org \
--cc=namhyung@kernel.org \
--cc=peterz@infradead.org \
--cc=robert.walker@arm.com \
--cc=tglx@linutronix.de \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.