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 X-Spam-Level: X-Spam-Status: No, score=-7.1 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,NICE_REPLY_A,SPF_HELO_NONE, SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4F432C43461 for ; Mon, 7 Sep 2020 16:29:39 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 22F09208C7 for ; Mon, 7 Sep 2020 16:29:39 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729895AbgIGQ3g (ORCPT ); Mon, 7 Sep 2020 12:29:36 -0400 Received: from lhrrgout.huawei.com ([185.176.76.210]:2776 "EHLO huawei.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1729796AbgIGObm (ORCPT ); Mon, 7 Sep 2020 10:31:42 -0400 Received: from lhreml724-chm.china.huawei.com (unknown [172.18.7.107]) by Forcepoint Email with ESMTP id AC54F340F250ED2A2380; Mon, 7 Sep 2020 15:31:40 +0100 (IST) Received: from [127.0.0.1] (10.47.2.208) by lhreml724-chm.china.huawei.com (10.201.108.75) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1913.5; Mon, 7 Sep 2020 15:31:39 +0100 Subject: Re: [PATCH 2/2] perf: Add Arm CMN-600 PMU driver To: Robin Murphy , , , CC: , , , , , References: <7f184a18890ef20632eae98b6c105c36f4eb0cd3.1596631695.git.robin.murphy@arm.com> <512b3de2-9ece-baaf-ef93-246a8af9464f@huawei.com> From: John Garry Message-ID: <4d0960ef-7a8c-2d8f-da15-04548354e325@huawei.com> Date: Mon, 7 Sep 2020 15:29:02 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.1.2 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset="utf-8"; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit X-Originating-IP: [10.47.2.208] X-ClientProxiedBy: lhreml726-chm.china.huawei.com (10.201.108.77) To lhreml724-chm.china.huawei.com (10.201.108.75) X-CFilter-Loop: Reflected Sender: devicetree-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org >> >> I had a quick look at the TRM (nearly 1000 pages, wow) for this IP, >> and could not see anything obvious to know the implementation id >> (similar problem to SMMU PMCG today). Do you know if there is anything >> appropiate? Is por_hnf_ppu_iidr any use here? > > Note that PPU is a distinct thing with its own architecture (apparently > https://developer.arm.com/documentation/den0051/latest/ if you're > interested), so that particular IIDR is merely describing the > implementation of the PPU interface, which AFAICS is not necessarily > unique to CMN-600. In terms of the PMU and CMN overall there is no > architecture to speak of, the implementation just is what it is :) > > I'd expect that some future interconnect IPs are likely to be similar > enough to share most of this driver, but those should get their own > top-level compatibles since they will not be CMN-600. Thus I don't > believe that identification is going to be too much of a concern. > >> Just a couple of more questions for now... >> >> [snip] >> >>> + >>> +static struct attribute *arm_cmn_event_attrs[] = { >>> +    CMN_EVENT_DTC(cycles), >>> + [...] >>> + >>> +    NULL >>> +}; >> >> Just wondering how does "perf list" look when you have multiple >> instances of the device in the system? > > Probably a giant mess, since I assume every (relevant) event should be > listed for each instance, much like CPU events on big.LITTLE systems, > and uncore events on many others (certainly most of the xgene_pmu events > on my eMAG workstation are repeated up to 8 times). Yeah, so that's one thing we would solve with my "system PMU" perf support, such that we can have a single per-event alias listed for instances of that PMU. So out of curiousity, for the big.LITTLE systems which you have seen with this issue, which cores do they have? > >> [snip] >>> +    }; >>> + >>> +    if (atomic_fetch_inc(&id) == 0) { >>> +        name = "arm_cmn"; >>> +    } else { >>> +        name = devm_kasprintf(cmn->dev, GFP_KERNEL, "arm_cmn_%d", >>> atomic_read(&id)); >> >> How is userspace supposed to know which device is which when we have >> multiple instances? I mean, doesn't this depend on arbitary probe >> ordering? > > Right, I had it in my head that there should be enough information in > sysfs to link the PMU device back to its parent platform device, but > apparently that isn't the case :( > > Furthermore, you've now got me thinking I might want to rejig the naming > scheme anyway - if I did have two instances named "foo" and "foo_1", is > perf tool going to interpret "-e foo/event/" as specifying a common > prefix and create the event on both PMUs even if I only wanted it on the > first one? It should just create the event on the PMU "foo", and not also "foo_1". I think. As for naming, as you know, for the SMMUv3 PMU driver we suffixed the HW base register address for the name - not ideal, but at least which PMU is which can be determined from userspace. Or for this driver case, maybe ACPI _UID could be used instead. Thanks, john 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 X-Spam-Level: X-Spam-Status: No, score=-7.2 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 231FDC43461 for ; Mon, 7 Sep 2020 14:33:02 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 9FCA920714 for ; Mon, 7 Sep 2020 14:33:01 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="RAfOihHu" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 9FCA920714 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=huawei.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Type: Content-Transfer-Encoding:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:Date:Message-ID:From: References:To:Subject:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=4tYuXtVjp2NkRuW9UL+w2LjMOUpajtk8Q2figQKyx7Q=; b=RAfOihHu+N/vHEpRAPOYGFcKv 3wUuV3gbzytXebFxgBmFu9EavxFW6vnxuP7hGxt7nK+ZEKiKbdRaP5XOxG4cLBWX8pwzC0dLhIN8R wCsJ4zYhlZhI0Yre3w+dzDnVX9s74WNYZxvvFWgJObdo0jVDfb+JXxjb4yFQA6DfmzV6UTjPs2MGz XQnpgZp+ilScO8RUR21GkWKGlMFQFkYHc7SlOhr3hOCh1IlYUqt/AkNyBm+nRMMUuN49J604GOCyI qAuUAghhl/0NTzHi2xwcGi26bhwZp0e3mOJoyzD3RLsWYv0uc3Bt2phL/j79T9nXyT5XPTVsgkYtB KDrtdBJcA==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kFIBN-0007Vo-Pf; Mon, 07 Sep 2020 14:31:45 +0000 Received: from lhrrgout.huawei.com ([185.176.76.210] helo=huawei.com) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kFIBK-0007Ux-3r for linux-arm-kernel@lists.infradead.org; Mon, 07 Sep 2020 14:31:43 +0000 Received: from lhreml724-chm.china.huawei.com (unknown [172.18.7.107]) by Forcepoint Email with ESMTP id AC54F340F250ED2A2380; Mon, 7 Sep 2020 15:31:40 +0100 (IST) Received: from [127.0.0.1] (10.47.2.208) by lhreml724-chm.china.huawei.com (10.201.108.75) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1913.5; Mon, 7 Sep 2020 15:31:39 +0100 Subject: Re: [PATCH 2/2] perf: Add Arm CMN-600 PMU driver To: Robin Murphy , , , References: <7f184a18890ef20632eae98b6c105c36f4eb0cd3.1596631695.git.robin.murphy@arm.com> <512b3de2-9ece-baaf-ef93-246a8af9464f@huawei.com> From: John Garry Message-ID: <4d0960ef-7a8c-2d8f-da15-04548354e325@huawei.com> Date: Mon, 7 Sep 2020 15:29:02 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.1.2 MIME-Version: 1.0 In-Reply-To: Content-Language: en-US X-Originating-IP: [10.47.2.208] X-ClientProxiedBy: lhreml726-chm.china.huawei.com (10.201.108.77) To lhreml724-chm.china.huawei.com (10.201.108.75) X-CFilter-Loop: Reflected X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200907_103142_252373_3487645D X-CRM114-Status: GOOD ( 29.23 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: devicetree@vger.kernel.org, tuanphan@os.amperecomputing.com, tsahee@amazon.com, harb@amperecomputing.com, james.yang@arm.com, alisaidi@amazon.com Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Pj4KPj4gSSBoYWQgYSBxdWljayBsb29rIGF0IHRoZSBUUk0gKG5lYXJseSAxMDAwIHBhZ2VzLCB3 b3cpIGZvciB0aGlzIElQLCAKPj4gYW5kIGNvdWxkIG5vdCBzZWUgYW55dGhpbmcgb2J2aW91cyB0 byBrbm93IHRoZSBpbXBsZW1lbnRhdGlvbiBpZCAKPj4gKHNpbWlsYXIgcHJvYmxlbSB0byBTTU1V IFBNQ0cgdG9kYXkpLiBEbyB5b3Uga25vdyBpZiB0aGVyZSBpcyBhbnl0aGluZyAKPj4gYXBwcm9w aWF0ZT8gSXMgcG9yX2huZl9wcHVfaWlkciBhbnkgdXNlIGhlcmU/Cj4gCj4gTm90ZSB0aGF0IFBQ VSBpcyBhIGRpc3RpbmN0IHRoaW5nIHdpdGggaXRzIG93biBhcmNoaXRlY3R1cmUgKGFwcGFyZW50 bHkgCj4gaHR0cHM6Ly9kZXZlbG9wZXIuYXJtLmNvbS9kb2N1bWVudGF0aW9uL2RlbjAwNTEvbGF0 ZXN0LyBpZiB5b3UncmUgCj4gaW50ZXJlc3RlZCksIHNvIHRoYXQgcGFydGljdWxhciBJSURSIGlz IG1lcmVseSBkZXNjcmliaW5nIHRoZSAKPiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgUFBVIGludGVy ZmFjZSwgd2hpY2ggQUZBSUNTIGlzIG5vdCBuZWNlc3NhcmlseSAKPiB1bmlxdWUgdG8gQ01OLTYw MC4gSW4gdGVybXMgb2YgdGhlIFBNVSBhbmQgQ01OIG92ZXJhbGwgdGhlcmUgaXMgbm8gCj4gYXJj aGl0ZWN0dXJlIHRvIHNwZWFrIG9mLCB0aGUgaW1wbGVtZW50YXRpb24ganVzdCBpcyB3aGF0IGl0 IGlzIDopCj4gCj4gSSdkIGV4cGVjdCB0aGF0IHNvbWUgZnV0dXJlIGludGVyY29ubmVjdCBJUHMg YXJlIGxpa2VseSB0byBiZSBzaW1pbGFyIAo+IGVub3VnaCB0byBzaGFyZSBtb3N0IG9mIHRoaXMg ZHJpdmVyLCBidXQgdGhvc2Ugc2hvdWxkIGdldCB0aGVpciBvd24gCj4gdG9wLWxldmVsIGNvbXBh dGlibGVzIHNpbmNlIHRoZXkgd2lsbCBub3QgYmUgQ01OLTYwMC4gVGh1cyBJIGRvbid0IAo+IGJl bGlldmUgdGhhdCBpZGVudGlmaWNhdGlvbiBpcyBnb2luZyB0byBiZSB0b28gbXVjaCBvZiBhIGNv bmNlcm4uCj4gCj4+IEp1c3QgYSBjb3VwbGUgb2YgbW9yZSBxdWVzdGlvbnMgZm9yIG5vdy4uLgo+ Pgo+PiBbc25pcF0KPj4KPj4+ICsKPj4+ICtzdGF0aWMgc3RydWN0IGF0dHJpYnV0ZSAqYXJtX2Nt bl9ldmVudF9hdHRyc1tdID0gewo+Pj4gK8KgwqDCoCBDTU5fRVZFTlRfRFRDKGN5Y2xlcyksCj4+ PiArCgpbLi4uXQoKPj4+ICsKPj4+ICvCoMKgwqAgTlVMTAo+Pj4gK307Cj4+Cj4+IEp1c3Qgd29u ZGVyaW5nIGhvdyBkb2VzICJwZXJmIGxpc3QiIGxvb2sgd2hlbiB5b3UgaGF2ZSBtdWx0aXBsZSAK Pj4gaW5zdGFuY2VzIG9mIHRoZSBkZXZpY2UgaW4gdGhlIHN5c3RlbT8KPiAKPiBQcm9iYWJseSBh IGdpYW50IG1lc3MsIHNpbmNlIEkgYXNzdW1lIGV2ZXJ5IChyZWxldmFudCkgZXZlbnQgc2hvdWxk IGJlIAo+IGxpc3RlZCBmb3IgZWFjaCBpbnN0YW5jZSwgbXVjaCBsaWtlIENQVSBldmVudHMgb24g YmlnLkxJVFRMRSBzeXN0ZW1zLCAKPiBhbmQgdW5jb3JlIGV2ZW50cyBvbiBtYW55IG90aGVycyAo Y2VydGFpbmx5IG1vc3Qgb2YgdGhlIHhnZW5lX3BtdSBldmVudHMgCj4gb24gbXkgZU1BRyB3b3Jr c3RhdGlvbiBhcmUgcmVwZWF0ZWQgdXAgdG8gOCB0aW1lcykuCgpZZWFoLCBzbyB0aGF0J3Mgb25l IHRoaW5nIHdlIHdvdWxkIHNvbHZlIHdpdGggbXkgInN5c3RlbSBQTVUiIHBlcmYgCnN1cHBvcnQs IHN1Y2ggdGhhdCB3ZSBjYW4gaGF2ZSBhIHNpbmdsZSBwZXItZXZlbnQgYWxpYXMgbGlzdGVkIGZv ciAKaW5zdGFuY2VzIG9mIHRoYXQgUE1VLgoKU28gb3V0IG9mIGN1cmlvdXNpdHksIGZvciB0aGUg YmlnLkxJVFRMRSBzeXN0ZW1zIHdoaWNoIHlvdSBoYXZlIHNlZW4gCndpdGggdGhpcyBpc3N1ZSwg d2hpY2ggY29yZXMgZG8gdGhleSBoYXZlPwoKPiAKPj4gW3NuaXBdCgo+Pj4gK8KgwqDCoCB9Owo+ Pj4gKwo+Pj4gK8KgwqDCoCBpZiAoYXRvbWljX2ZldGNoX2luYygmaWQpID09IDApIHsKPj4+ICvC oMKgwqDCoMKgwqDCoCBuYW1lID0gImFybV9jbW4iOwo+Pj4gK8KgwqDCoCB9IGVsc2Ugewo+Pj4g K8KgwqDCoMKgwqDCoMKgIG5hbWUgPSBkZXZtX2thc3ByaW50ZihjbW4tPmRldiwgR0ZQX0tFUk5F TCwgImFybV9jbW5fJWQiLCAKPj4+IGF0b21pY19yZWFkKCZpZCkpOwo+Pgo+PiBIb3cgaXMgdXNl cnNwYWNlIHN1cHBvc2VkIHRvIGtub3cgd2hpY2ggZGV2aWNlIGlzIHdoaWNoIHdoZW4gd2UgaGF2 ZSAKPj4gbXVsdGlwbGUgaW5zdGFuY2VzPyBJIG1lYW4sIGRvZXNuJ3QgdGhpcyBkZXBlbmQgb24g YXJiaXRhcnkgcHJvYmUgCj4+IG9yZGVyaW5nPwo+IAo+IFJpZ2h0LCBJIGhhZCBpdCBpbiBteSBo ZWFkIHRoYXQgdGhlcmUgc2hvdWxkIGJlIGVub3VnaCBpbmZvcm1hdGlvbiBpbiAKPiBzeXNmcyB0 byBsaW5rIHRoZSBQTVUgZGV2aWNlIGJhY2sgdG8gaXRzIHBhcmVudCBwbGF0Zm9ybSBkZXZpY2Us IGJ1dCAKPiBhcHBhcmVudGx5IHRoYXQgaXNuJ3QgdGhlIGNhc2UgOigKPiAKPiBGdXJ0aGVybW9y ZSwgeW91J3ZlIG5vdyBnb3QgbWUgdGhpbmtpbmcgSSBtaWdodCB3YW50IHRvIHJlamlnIHRoZSBu YW1pbmcgCj4gc2NoZW1lIGFueXdheSAtIGlmIEkgZGlkIGhhdmUgdHdvIGluc3RhbmNlcyBuYW1l ZCAiZm9vIiBhbmQgImZvb18xIiwgaXMgCj4gcGVyZiB0b29sIGdvaW5nIHRvIGludGVycHJldCAi LWUgZm9vL2V2ZW50LyIgYXMgc3BlY2lmeWluZyBhIGNvbW1vbiAKPiBwcmVmaXggYW5kIGNyZWF0 ZSB0aGUgZXZlbnQgb24gYm90aCBQTVVzIGV2ZW4gaWYgSSBvbmx5IHdhbnRlZCBpdCBvbiB0aGUg Cj4gZmlyc3Qgb25lPwoKSXQgc2hvdWxkIGp1c3QgY3JlYXRlIHRoZSBldmVudCBvbiB0aGUgUE1V ICJmb28iLCBhbmQgbm90IGFsc28gImZvb18xIi4gCkkgdGhpbmsuCgpBcyBmb3IgbmFtaW5nLCBh cyB5b3Uga25vdywgZm9yIHRoZSBTTU1VdjMgUE1VIGRyaXZlciB3ZSBzdWZmaXhlZCB0aGUgSFcg CmJhc2UgcmVnaXN0ZXIgYWRkcmVzcyBmb3IgdGhlIG5hbWUgLSBub3QgaWRlYWwsIGJ1dCBhdCBs ZWFzdCB3aGljaCBQTVUgCmlzIHdoaWNoIGNhbiBiZSBkZXRlcm1pbmVkIGZyb20gdXNlcnNwYWNl LiBPciBmb3IgdGhpcyBkcml2ZXIgY2FzZSwgCm1heWJlIEFDUEkgX1VJRCBjb3VsZCBiZSB1c2Vk IGluc3RlYWQuCgpUaGFua3MsCmpvaG4KCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1r ZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWls bWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK