From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 23D3FC88CB2 for ; Mon, 12 Jun 2023 18:33:29 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235410AbjFLSd2 (ORCPT ); Mon, 12 Jun 2023 14:33:28 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:53126 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232495AbjFLSd1 (ORCPT ); Mon, 12 Jun 2023 14:33:27 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [IPv6:2604:1380:4641:c500::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B62BD10CC; Mon, 12 Jun 2023 11:32:56 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id B1A0C62CF7; Mon, 12 Jun 2023 18:32:55 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id E12CCC4339C; Mon, 12 Jun 2023 18:32:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686594775; bh=WD6yfMd1Lig9EzPwhFo3GU2PEduL3upHoyMgQX0HNp0=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=Y8rtO46J/yKiguHzzFrMJZbDczxiP6tNBlVVErJCCLqrefl7oHYqv0gvIi+XUTZ6d egc04G7adjaGRDbFCet0xVxBXk7KRDjkP+LH4qHJeOvWBRbGkRCZGB10udcFWNf0ii m3FVHNlJl1gNPlLs98KLuG97UtYg2R07tiC9CyhGbRvXJv65hgl8p92+waVzprV/qk UxHm0UnbIvGA/UuqJpsiOnJmvO/udnUwZ1zijwAItWJsVi3PIkvJj1Si7g3ix/7t6G T/D11UfKTAvesFpSKMIvqypkgOx0QS53KHpTjmOdI/wu3oQdJk/kVYsvFnZtok/8eg uxGyh4xlVp8nA== Received: by quaco.ghostprotocols.net (Postfix, from userid 1000) id 6D6E040692; Mon, 12 Jun 2023 15:32:52 -0300 (-03) Date: Mon, 12 Jun 2023 15:32:52 -0300 From: Arnaldo Carvalho de Melo To: James Clark Cc: coresight@lists.linaro.org, Suzuki K Poulose , Mike Leach , Leo Yan , Peter Zijlstra , Ingo Molnar , Mark Rutland , Alexander Shishkin , Jiri Olsa , Namhyung Kim , Ian Rogers , Adrian Hunter , John Garry , Will Deacon , linux-arm-kernel@lists.infradead.org, linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v3 0/5] perf cs-etm: Track exception level Message-ID: References: <20230612111403.100613-1-james.clark@arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20230612111403.100613-1-james.clark@arm.com> X-Url: http://acmel.wordpress.com Precedence: bulk List-ID: X-Mailing-List: linux-perf-users@vger.kernel.org Em Mon, Jun 12, 2023 at 12:13:57PM +0100, James Clark escreveu: > Changes since v2: > > * Rename prev_thread -> prev_packet_thread and prev_el -> > prev_packet_el > * Add a comment about tracking the previous packet's thread > > Changes since v1: > > * Always assume host kernel when the trace was captured at EL1 (nVHE) > * Fix EL validation to work with ETMv3 > * Add a commit to make PID format accessible from struct > cs_etm_auxtrace Please take a look in my tmp.perf-tools-next branch, there were some conflicts I had to fix as those files were touched by refactorings for addr_location and thread reference counting. ⬢[acme@toolbox perf-tools-next]$ git log --oneline -10 aa53fb2c482e70c2 (HEAD -> perf-tools-next) perf cs-etm: Add exception level consistency check 2918e9895224541f perf cs-etm: Track exception level f492a33909829a75 perf cs-etm: Make PID format accessible from struct cs_etm_auxtrace e29ec19b0751c6b2 perf cs-etm: Use previous thread for branch sample source IP e9e03e9c3ca7088c perf cs-etm: Only track threads instead of PID and TIDs 6fd34445b8c94aa7 perf map: Fix double 'struct map' reference free found with -DREFCNT_CHECKING=1 e9c0a7f63e45e76f perf srcline: Optimize comparision against SRCLINE_UNKNOWN fd87a79c7ed62804 perf hist: Fix srcline memory leak 933f9651d47cdda2 perf srcline: Change free_srcline to zfree_srcline d22cfb063bcc674e perf callchain: Use pthread keys for tls callchain_cursor ⬢[acme@toolbox perf-tools-next]$ - Arnaldo > ====== > > Some fixes to support an issue reported by Denis Nikitin where decoding > trace that contains different EL1 and EL2 kernels can crash or go into > an infinite loop because the wrong kernel maps are used for the decode. > > This still doesn't support distinguishing guest and host userspace, > we'd still have to fix the timestamps and do a bit more work to > correlate that. And I've removed PERF_RECORD_MISC_HYPERVISOR as a > possible outcome of cs_etm__cpu_mode(). As far as I know this could > never have been returned anyway because machine__is_host(machine) was > always true due to session.machines.host being hard coded. And I'm not > sure of the relevance of the difference between PERF_RECORD_MISC_KERNEL > and PERF_RECORD_MISC_HYPERVISOR in this scenario. > > The first commit is a tidy up, second fixes a bug that I found when > comparing the exception level and thread of branch records, the third > is the main fix, and the last commit is some extra error checking. > > Applies to acme/perf-tools-next (42713dafc) > > James Clark (5): > perf cs-etm: Only track threads instead of PID and TIDs > perf cs-etm: Use previous thread for branch sample source IP > perf cs-etm: Make PID format accessible from struct cs_etm_auxtrace > perf cs-etm: Track exception level > perf cs-etm: Add exception level consistency check > > .../perf/util/cs-etm-decoder/cs-etm-decoder.c | 33 +- > .../perf/util/cs-etm-decoder/cs-etm-decoder.h | 4 +- > tools/perf/util/cs-etm.c | 282 ++++++++++-------- > tools/perf/util/cs-etm.h | 13 +- > 4 files changed, 184 insertions(+), 148 deletions(-) > > -- > 2.34.1 > -- - Arnaldo From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 92851C88CB2 for ; Mon, 12 Jun 2023 18:33:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References: Message-ID:Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=HS4aeI8oiCkGO/6lSQgGTQ2UlknwBkbkfPV+Rh8OT5k=; b=kA4h+lsQ2BBNQN f1oKeo0CTOoa82wQN4f8YgudJb7F+TOcxb/eIPbWmaxQqKxfHQezqiSfpoa68wXDvymT+SBlhnfhi LgYUe9yoBfYNnXLKQXzQxun+2fjrYWJJmTTcXaZcMehZGHlplcYPbX/EOtxgTG8B/UNZRG89U4IZw le8PDTT66YVNVFkFbF/DbGIjsB8cSzBEUzAT73ap7LaZuEz8WU4tUrhj3jZmVJsjeEjE0yT19COLi po5kiQx7fqtHKTG1MvoPgUVhpSxwfcpFgt+W1nefDg1uedgflin8On1gx4DehULunSVMExOtVsWak JmKbpZT38BwnaovSiYbg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1q8mLb-004xTa-2R; Mon, 12 Jun 2023 18:32:59 +0000 Received: from desiato.infradead.org ([2001:8b0:10b:1:d65d:64ff:fe57:4e05]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1q8mLa-004xTC-0v for linux-arm-kernel@bombadil.infradead.org; Mon, 12 Jun 2023 18:32:58 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=desiato.20200630; h=In-Reply-To:Content-Transfer-Encoding: Content-Type:MIME-Version:References:Message-ID:Subject:Cc:To:From:Date: Sender:Reply-To:Content-ID:Content-Description; bh=/ceIzicNFidNrcGsxVrRcPa5dKl7c79qDdX16uc5cpU=; b=p45seK0wvP8lrDiMaPTUCE0c/i FU1UcFirFVroAJmQXDgI5uQOlQjg+HNsfO0iC2dhuEoQ6LyAMAa14KaNGvHFk55blX9Lg9HOsuXko arihZ8HDDSIWcROHAt0WrUJh2NSU4Kp75z6H89y0j0+ktWIlaHap3k0EVb+mBKBXctmT23NEWwfBy qjQ+NVtstUGfuy9SaVIIxEbUc740SzNylNID2aQtSWbGXslGklv9vXPblKKakYuV2EEnGSU4RXc+c SahvPaUW9SI1tNRHnfdakjkK2+CZNhIFUBHU3+08h4iaQszJhjyjqJHNJ/mDhvE9JjL4UbbKES7W5 NuauF6zw==; Received: from [187.19.173.213] (helo=quaco.ghostprotocols.net) by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux)) id 1q8mLY-008y70-25; Mon, 12 Jun 2023 18:32:56 +0000 Received: by quaco.ghostprotocols.net (Postfix, from userid 1000) id 6D6E040692; Mon, 12 Jun 2023 15:32:52 -0300 (-03) Date: Mon, 12 Jun 2023 15:32:52 -0300 From: Arnaldo Carvalho de Melo To: James Clark Cc: coresight@lists.linaro.org, Suzuki K Poulose , Mike Leach , Leo Yan , Peter Zijlstra , Ingo Molnar , Mark Rutland , Alexander Shishkin , Jiri Olsa , Namhyung Kim , Ian Rogers , Adrian Hunter , John Garry , Will Deacon , linux-arm-kernel@lists.infradead.org, linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v3 0/5] perf cs-etm: Track exception level Message-ID: References: <20230612111403.100613-1-james.clark@arm.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230612111403.100613-1-james.clark@arm.com> X-Url: http://acmel.wordpress.com X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org RW0gTW9uLCBKdW4gMTIsIDIwMjMgYXQgMTI6MTM6NTdQTSArMDEwMCwgSmFtZXMgQ2xhcmsgZXNj cmV2ZXU6Cj4gQ2hhbmdlcyBzaW5jZSB2MjoKPiAKPiAgICogUmVuYW1lIHByZXZfdGhyZWFkIC0+ IHByZXZfcGFja2V0X3RocmVhZCBhbmQgcHJldl9lbCAtPgo+ICAgICBwcmV2X3BhY2tldF9lbAo+ ICAgKiBBZGQgYSBjb21tZW50IGFib3V0IHRyYWNraW5nIHRoZSBwcmV2aW91cyBwYWNrZXQncyB0 aHJlYWQKPiAKPiBDaGFuZ2VzIHNpbmNlIHYxOgo+IAo+ICAgKiBBbHdheXMgYXNzdW1lIGhvc3Qg a2VybmVsIHdoZW4gdGhlIHRyYWNlIHdhcyBjYXB0dXJlZCBhdCBFTDEgKG5WSEUpCj4gICAqIEZp eCBFTCB2YWxpZGF0aW9uIHRvIHdvcmsgd2l0aCBFVE12Mwo+ICAgKiBBZGQgYSBjb21taXQgdG8g bWFrZSBQSUQgZm9ybWF0IGFjY2Vzc2libGUgZnJvbSBzdHJ1Y3QKPiAgICAgY3NfZXRtX2F1eHRy YWNlCgpQbGVhc2UgdGFrZSBhIGxvb2sgaW4gbXkgdG1wLnBlcmYtdG9vbHMtbmV4dCBicmFuY2gs IHRoZXJlIHdlcmUgc29tZQpjb25mbGljdHMgSSBoYWQgdG8gZml4IGFzIHRob3NlIGZpbGVzIHdl cmUgdG91Y2hlZCBieSByZWZhY3RvcmluZ3MgZm9yCmFkZHJfbG9jYXRpb24gYW5kIHRocmVhZCBy ZWZlcmVuY2UgY291bnRpbmcuCgrirKJbYWNtZUB0b29sYm94IHBlcmYtdG9vbHMtbmV4dF0kIGdp dCBsb2cgLS1vbmVsaW5lIC0xMAphYTUzZmIyYzQ4MmU3MGMyIChIRUFEIC0+IHBlcmYtdG9vbHMt bmV4dCkgcGVyZiBjcy1ldG06IEFkZCBleGNlcHRpb24gbGV2ZWwgY29uc2lzdGVuY3kgY2hlY2sK MjkxOGU5ODk1MjI0NTQxZiBwZXJmIGNzLWV0bTogVHJhY2sgZXhjZXB0aW9uIGxldmVsCmY0OTJh MzM5MDk4MjlhNzUgcGVyZiBjcy1ldG06IE1ha2UgUElEIGZvcm1hdCBhY2Nlc3NpYmxlIGZyb20g c3RydWN0IGNzX2V0bV9hdXh0cmFjZQplMjllYzE5YjA3NTFjNmIyIHBlcmYgY3MtZXRtOiBVc2Ug cHJldmlvdXMgdGhyZWFkIGZvciBicmFuY2ggc2FtcGxlIHNvdXJjZSBJUAplOWUwM2U5YzNjYTcw ODhjIHBlcmYgY3MtZXRtOiBPbmx5IHRyYWNrIHRocmVhZHMgaW5zdGVhZCBvZiBQSUQgYW5kIFRJ RHMKNmZkMzQ0NDViOGM5NGFhNyBwZXJmIG1hcDogRml4IGRvdWJsZSAnc3RydWN0IG1hcCcgcmVm ZXJlbmNlIGZyZWUgZm91bmQgd2l0aCAtRFJFRkNOVF9DSEVDS0lORz0xCmU5YzBhN2Y2M2U0NWU3 NmYgcGVyZiBzcmNsaW5lOiBPcHRpbWl6ZSBjb21wYXJpc2lvbiBhZ2FpbnN0IFNSQ0xJTkVfVU5L Tk9XTgpmZDg3YTc5YzdlZDYyODA0IHBlcmYgaGlzdDogRml4IHNyY2xpbmUgbWVtb3J5IGxlYWsK OTMzZjk2NTFkNDdjZGRhMiBwZXJmIHNyY2xpbmU6IENoYW5nZSBmcmVlX3NyY2xpbmUgdG8gemZy ZWVfc3JjbGluZQpkMjJjZmIwNjNiY2M2NzRlIHBlcmYgY2FsbGNoYWluOiBVc2UgcHRocmVhZCBr ZXlzIGZvciB0bHMgY2FsbGNoYWluX2N1cnNvcgrirKJbYWNtZUB0b29sYm94IHBlcmYtdG9vbHMt bmV4dF0kCgoKLSBBcm5hbGRvCiAKPiA9PT09PT0KPiAKPiBTb21lIGZpeGVzIHRvIHN1cHBvcnQg YW4gaXNzdWUgcmVwb3J0ZWQgYnkgRGVuaXMgTmlraXRpbiB3aGVyZSBkZWNvZGluZwo+IHRyYWNl IHRoYXQgY29udGFpbnMgZGlmZmVyZW50IEVMMSBhbmQgRUwyIGtlcm5lbHMgY2FuIGNyYXNoIG9y IGdvIGludG8KPiBhbiBpbmZpbml0ZSBsb29wIGJlY2F1c2UgdGhlIHdyb25nIGtlcm5lbCBtYXBz IGFyZSB1c2VkIGZvciB0aGUgZGVjb2RlLgo+IAo+IFRoaXMgc3RpbGwgZG9lc24ndCBzdXBwb3J0 IGRpc3Rpbmd1aXNoaW5nIGd1ZXN0IGFuZCBob3N0IHVzZXJzcGFjZSwKPiB3ZSdkIHN0aWxsIGhh dmUgdG8gZml4IHRoZSB0aW1lc3RhbXBzIGFuZCBkbyBhIGJpdCBtb3JlIHdvcmsgdG8KPiBjb3Jy ZWxhdGUgdGhhdC4gQW5kIEkndmUgcmVtb3ZlZCBQRVJGX1JFQ09SRF9NSVNDX0hZUEVSVklTT1Ig YXMgYQo+IHBvc3NpYmxlIG91dGNvbWUgb2YgY3NfZXRtX19jcHVfbW9kZSgpLiBBcyBmYXIgYXMg SSBrbm93IHRoaXMgY291bGQKPiBuZXZlciBoYXZlIGJlZW4gcmV0dXJuZWQgYW55d2F5IGJlY2F1 c2UgbWFjaGluZV9faXNfaG9zdChtYWNoaW5lKSB3YXMKPiBhbHdheXMgdHJ1ZSBkdWUgdG8gc2Vz c2lvbi5tYWNoaW5lcy5ob3N0IGJlaW5nIGhhcmQgY29kZWQuIEFuZCBJJ20gbm90Cj4gc3VyZSBv ZiB0aGUgcmVsZXZhbmNlIG9mIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4gUEVSRl9SRUNPUkRfTUlT Q19LRVJORUwKPiBhbmQgUEVSRl9SRUNPUkRfTUlTQ19IWVBFUlZJU09SIGluIHRoaXMgc2NlbmFy aW8uCj4gCj4gVGhlIGZpcnN0IGNvbW1pdCBpcyBhIHRpZHkgdXAsIHNlY29uZCBmaXhlcyBhIGJ1 ZyB0aGF0IEkgZm91bmQgd2hlbgo+IGNvbXBhcmluZyB0aGUgZXhjZXB0aW9uIGxldmVsIGFuZCB0 aHJlYWQgb2YgYnJhbmNoIHJlY29yZHMsIHRoZSB0aGlyZAo+IGlzIHRoZSBtYWluIGZpeCwgYW5k IHRoZSBsYXN0IGNvbW1pdCBpcyBzb21lIGV4dHJhIGVycm9yIGNoZWNraW5nLiAKPiAKPiBBcHBs aWVzIHRvIGFjbWUvcGVyZi10b29scy1uZXh0ICg0MjcxM2RhZmMpCj4gCj4gSmFtZXMgQ2xhcmsg KDUpOgo+ICAgcGVyZiBjcy1ldG06IE9ubHkgdHJhY2sgdGhyZWFkcyBpbnN0ZWFkIG9mIFBJRCBh bmQgVElEcwo+ICAgcGVyZiBjcy1ldG06IFVzZSBwcmV2aW91cyB0aHJlYWQgZm9yIGJyYW5jaCBz YW1wbGUgc291cmNlIElQCj4gICBwZXJmIGNzLWV0bTogTWFrZSBQSUQgZm9ybWF0IGFjY2Vzc2li bGUgZnJvbSBzdHJ1Y3QgY3NfZXRtX2F1eHRyYWNlCj4gICBwZXJmIGNzLWV0bTogVHJhY2sgZXhj ZXB0aW9uIGxldmVsCj4gICBwZXJmIGNzLWV0bTogQWRkIGV4Y2VwdGlvbiBsZXZlbCBjb25zaXN0 ZW5jeSBjaGVjawo+IAo+ICAuLi4vcGVyZi91dGlsL2NzLWV0bS1kZWNvZGVyL2NzLWV0bS1kZWNv ZGVyLmMgfCAgMzMgKy0KPiAgLi4uL3BlcmYvdXRpbC9jcy1ldG0tZGVjb2Rlci9jcy1ldG0tZGVj b2Rlci5oIHwgICA0ICstCj4gIHRvb2xzL3BlcmYvdXRpbC9jcy1ldG0uYyAgICAgICAgICAgICAg ICAgICAgICB8IDI4MiArKysrKysrKysrLS0tLS0tLS0KPiAgdG9vbHMvcGVyZi91dGlsL2NzLWV0 bS5oICAgICAgICAgICAgICAgICAgICAgIHwgIDEzICstCj4gIDQgZmlsZXMgY2hhbmdlZCwgMTg0 IGluc2VydGlvbnMoKyksIDE0OCBkZWxldGlvbnMoLSkKPiAKPiAtLSAKPiAyLjM0LjEKPiAKCi0t IAoKLSBBcm5hbGRvCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwpsaW51eC1hcm0ta2VybmVsIG1haWxpbmcgbGlzdApsaW51eC1hcm0ta2VybmVsQGxpc3Rz LmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5m by9saW51eC1hcm0ta2VybmVsCg==