Received: by 2002:a05:6a10:2785:0:0:0:0 with SMTP id ia5csp2150349pxb; Mon, 11 Jan 2021 02:10:47 -0800 (PST) X-Google-Smtp-Source: ABdhPJyYlx55zgM8QGO6A/pD3u9rZsAcW4YE+Shgyf2uTm3IgAlOv8+ntayY3Bu5cLBAoT8/cI6z X-Received: by 2002:a17:906:7f83:: with SMTP id f3mr9893697ejr.282.1610359846808; Mon, 11 Jan 2021 02:10:46 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1610359846; cv=none; d=google.com; s=arc-20160816; b=CNIYu7LTR/vKaIM3T/SwdFFmqA7CtwYBRDKGd/2d9fo3XhSR1OdkKccBfp/Apd48ZX XX8mJYHdVbrxyEKS6GHpnt52J9punSgqt0br+48PKILd/cQR/uLqxQHl8ov7kHjX/WgV pHIQaOKrD2jVVyzmDqpjM5rssjKw6YZR93IKyaBCZOyf2vUKmbPZ5Ys0du+h6XMJabI0 xqcNOfUXPDXBclOmnmOTN1pRZbaPe/XCk78P7F/IihDDAexyF2GWQJs9okWeSKdId09i HBsNM/YOncXnw+SvtW1vEDKscrWklCw8Uq73wum0SJFYYuXb4uytIKvYYuoIp7VgI/5G fuCA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:from:references :cc:to:subject; bh=hoev0adeK96loB9gqdnzZl3iSF7bqoAVWxnuctXCa5s=; b=bJWWSZZsltWmUQKcvQbuRgtXosDYVZU/SfQg1FbzOeAvwf0aPMvA0NkrHldCG8T4X2 4V4ymkZCgKoOwju4Xbk22vbImjG23xTJhUIqwHFnrdhna/OBXYSrwSDi+1JZZaFpGyPz rGIAi5Lh4pA1au5crQEEppnDRdO3w6E9z9nwlxi61UHcJELt/aca9lGFlPwJIvH6NAzR +h0V9eZ7lUhGqC/RmqD4WXRFRbGDdvPLt3y6wbKAEgCnjPhheYe+vLpdhcSymQZ6Su+x onTLlmj+764QQ+x+p9SS/by3pNmqgJ3tubpFT0ezXaBj/F8/FCMsS3Ebm42r0AYX1/UO 4bZg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id c9si6895949edr.4.2021.01.11.02.10.23; Mon, 11 Jan 2021 02:10:46 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728741AbhAKKIC (ORCPT + 99 others); Mon, 11 Jan 2021 05:08:02 -0500 Received: from foss.arm.com ([217.140.110.172]:52256 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728527AbhAKKIC (ORCPT ); Mon, 11 Jan 2021 05:08:02 -0500 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 59CFC101E; Mon, 11 Jan 2021 02:07:16 -0800 (PST) Received: from [10.57.39.145] (unknown [10.57.39.145]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id BB0003F70D; Mon, 11 Jan 2021 02:07:12 -0800 (PST) Subject: Re: [PATCH v1 7/7] perf cs-etm: Detect pid in VMID for kernel running at EL2 To: Leo Yan , Arnaldo Carvalho de Melo , Mathieu Poirier , Mike Leach , Alexander Shishkin , John Garry , Will Deacon , Peter Zijlstra , Ingo Molnar , Mark Rutland , Jiri Olsa , Namhyung Kim , Daniel Kiss , Denis Nikitin , coresight@lists.linaro.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Cc: Al Grant References: <20210109074435.626855-1-leo.yan@linaro.org> <20210109074435.626855-8-leo.yan@linaro.org> From: Suzuki K Poulose Message-ID: <19205bb1-369a-9274-d752-d94f33a909f8@arm.com> Date: Mon, 11 Jan 2021 10:07:03 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.6.0 MIME-Version: 1.0 In-Reply-To: <20210109074435.626855-8-leo.yan@linaro.org> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-GB Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Leo On 1/9/21 7:44 AM, Leo Yan wrote: > From: Suzuki K Poulose > > 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. > > Cc: Mike Leach > Cc: Mathieu Poirier > Cc: Al Grant > Co-developed-by: Leo Yan > Signed-off-by: Suzuki K Poulose > Signed-off-by: Leo Yan > --- > .../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 > */ > > +#include > #include > #include > #include > @@ -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. Cheers Suzuki