Re: [PATCH v1 7/7] perf cs-etm: Detect pid in VMID for kernel running at EL2
From: Leo Yan <hidden>
Date: 2021-01-11 13:12:00
Also in:
lkml
On Mon, Jan 11, 2021 at 10:07:03AM +0000, Suzuki Kuruppassery Poulose wrote:
Hi Leo On 1/9/21 7:44 AM, Leo Yan wrote:quoted
From: Suzuki K Poulose <suzuki.poulose@arm.com> The pid of the task could be traced as VMID when the kernel is running at EL2. Teach the decoder to look for vmid when the context_id is invalid but we have a valid VMID.Thank you again for cleaning up this ! Please see one comment below.
Welcome!
quoted
Cc: Mike Leach <redacted> Cc: Mathieu Poirier <mathieu.poirier@linaro.org> Cc: Al Grant <redacted> Co-developed-by: Leo Yan <redacted> Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com> Signed-off-by: Leo Yan <redacted> --- .../perf/util/cs-etm-decoder/cs-etm-decoder.c | 32 ++++++++++++++++--- 1 file changed, 28 insertions(+), 4 deletions(-)diff --git a/tools/perf/util/cs-etm-decoder/cs-etm-decoder.c b/tools/perf/util/cs-etm-decoder/cs-etm-decoder.c index cd007cc9c283..9e81169dfa76 100644 --- a/tools/perf/util/cs-etm-decoder/cs-etm-decoder.c +++ b/tools/perf/util/cs-etm-decoder/cs-etm-decoder.c@@ -6,6 +6,7 @@ * Author: Mathieu Poirier <mathieu.poirier@linaro.org> */ +#include <linux/coresight-pmu.h> #include <linux/err.h> #include <linux/list.h> #include <linux/zalloc.h>@@ -500,13 +501,36 @@ cs_etm_decoder__set_tid(struct cs_etm_queue *etmq, const ocsd_generic_trace_elem *elem, const uint8_t trace_chan_id) { - pid_t tid; + pid_t tid = -1; + u64 pid_fmt; + int ret; - /* Ignore PE_CONTEXT packets that don't have a valid contextID */ - if (!elem->context.ctxt_id_valid) + ret = cs_etm__get_pid_fmt(trace_chan_id, &pid_fmt); + if (ret) + return OCSD_RESP_FATAL_SYS_ERR;The patch looks fine to me. I am wondering if this can be cached somewhere in the etmq to avoid doing the search everytime we hit a CID ? Surely for a session, this woudn't change and thus for the decoder life time.
Good suggestion, will refine for this in next version. Thanks, Leo _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel