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.7 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,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 1B0BFC48BE5 for ; Wed, 16 Jun 2021 13:43:14 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 0748A6100A for ; Wed, 16 Jun 2021 13:43:14 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233511AbhFPNpQ (ORCPT ); Wed, 16 Jun 2021 09:45:16 -0400 Received: from mail.kernel.org ([198.145.29.99]:43340 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233470AbhFPNpI (ORCPT ); Wed, 16 Jun 2021 09:45:08 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 8A19C6100A; Wed, 16 Jun 2021 13:43:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1623850982; bh=PNvqZ58yryGZzUwSLjIqM5T0z2MfgSz+KfhEckS1YcY=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=q1BG8w9PPDB1NFZMuqv7M0Lt6zCOOccDKk4LSEH/fGGvYcAr3ieHpffdGcYh3vTDd j5OzoLzh5TKFs2Ce0YMG+/5s2CmCEt7dy7fFBd3LqO3m2YdixpetQlc5mPxjMG3Z40 GFSJ6NVsCe4gnfvcbuCJrsnUnQQCpcTVo1EatEc5ZH5R+M/cC8G2wEWKNJ4vD3bWYt PxXIj1W3hiDAIQIZsbRsdh1ScRGYgrEKSdK8YBMjwcKLB6Ktpd5UvG0R7hHofhNKdE DqR/xYiTJWl7/mHLzrhfOkddt3ViP3isVs59lDur9oWBJd8wYKYTrKmsh3z/SRC+vR w88G1okk6oBMQ== Date: Wed, 16 Jun 2021 14:42:58 +0100 From: Will Deacon To: "liuqi (BA)" Cc: Linuxarm , mark.rutland@arm.com, bhelgaas@google.com, linux-pci@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, zhangshaokun@hisilicon.com Subject: Re: [PATCH v6 2/2] drivers/perf: hisi: Add driver for HiSilicon PCIe PMU Message-ID: <20210616134257.GA22905@willie-the-truck> References: <1622467951-32114-1-git-send-email-liuqi115@huawei.com> <1622467951-32114-3-git-send-email-liuqi115@huawei.com> <20210611162347.GA16284@willie-the-truck> <20210615093519.GB19878@willie-the-truck> <8e15e8d6-cfe8-0926-0ca1-b162302e52a5@huawei.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <8e15e8d6-cfe8-0926-0ca1-b162302e52a5@huawei.com> User-Agent: Mutt/1.10.1 (2018-07-13) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, On Wed, Jun 16, 2021 at 09:54:23AM +0800, liuqi (BA) wrote: > On 2021/6/15 17:35, Will Deacon wrote: > > On Tue, Jun 15, 2021 at 04:57:09PM +0800, liuqi (BA) wrote: > > > On 2021/6/12 0:23, Will Deacon wrote: > > > > On Mon, May 31, 2021 at 09:32:31PM +0800, Qi Liu wrote: > > > > > + /* Process data to set unit of latency as "us". */ > > > > > + if (is_latency_event(idx)) > > > > > + return div64_u64(data * us_per_cycle, data_ext); > > > > > + > > > > > + if (is_bus_util_event(idx)) > > > > > + return div64_u64(data * us_per_cycle, data_ext); > > > > > + > > > > > + if (is_buf_util_event(idx)) > > > > > + return div64_u64(data, data_ext * us_per_cycle); > > > > > > > > Why do we need to do all this division in the kernel? Can't we just expose > > > > the underlying values and let userspace figure out what it wants to do with > > > > the numbers? > > > > > > > Our PMU hardware support 8 sets of counters to count bandwidth, latency and > > > utilization events. > > > > > > For example, when users set latency event, common counter will count delay > > > cycles, and extern counter count number of PCIe packets automaticly. And we > > > do not have a event number for counting number of PCIe packets. > > > > > > So this division cannot move to userspace tool. > > > > Why can't you expose the packet counter as an extra event to userspace? > > > Maybe I didn’t express it clearly. > > As there is no hardware event number for PCIe packets counting, extern > counter count packets *automaticly* when latency events is selected by > users. > > This means users cannot set "config=0xXX" to start packets counting event. > So we can only get the value of counter and extern counter in driver and do > the division, then pass the result to userspace. I still think it would be ideal if we could expose both values to userspace rather than combine them somehow. Hmm. Anyway... I struggled to figure out exactly what's being counted from the documentation patch (please update that). Please can you explain exactly what appears in the HISI_PCIE_CNT and HISI_PCIE_EXT_CNT registers for the different modes of operation? Without that, the ratios you've chosen to report seem rather arbitrary. I also couldn't figure out how the latency event works. For example, I was assuming it would be a filter (a bit like the length), so you could say things like "I'm only interested in packets with a latency higher than x" but it doesn't look like it works that way. Thanks, Will 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=-5.7 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,MAILING_LIST_MULTI,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 509AEC48BE5 for ; Wed, 16 Jun 2021 13:50:30 +0000 (UTC) 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 mail.kernel.org (Postfix) with ESMTPS id 21BAE6115B for ; Wed, 16 Jun 2021 13:50:30 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 21BAE6115B Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org 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=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=OlKSxu3f3dn0KWAeGWEdUstmLxrsWBGf9hrhQzatUVE=; b=GCKJe46BT5jzAA pPrtkSK1wEpyZ5xAiMwp/y4/RIowksGdRD77hqsmoDPeueKG0smgmZ02DI84SHNqYk1ooDYtzO/Jw vjwjgi6TkGGxPqNYuvskv5XCEWXOgDUJLaBKpxgIZi/lXXIydCVnJV91Df9wKGFbBA9TtPCQZquYF f/KXEttZ94xcYnjzDVJ5veNbyDgxNU/2fA+2MFwef2wS56QqxoydItuN+1nwaKiU80/78kYjNDtgy 0mwqml4BkS0e2kdQoCfb2an7HPpGKKeDC5dcPwVFjpMLjrNVvtXHdUAQYq1EaC2Txvue2XsuF+L2U CFSG2niQKH8S0cA5/VcQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1ltVta-006Wbf-SA; Wed, 16 Jun 2021 13:47:56 +0000 Received: from mail.kernel.org ([198.145.29.99]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1ltVot-006UUZ-Gu for linux-arm-kernel@lists.infradead.org; Wed, 16 Jun 2021 13:43:04 +0000 Received: by mail.kernel.org (Postfix) with ESMTPSA id 8A19C6100A; Wed, 16 Jun 2021 13:43:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1623850982; bh=PNvqZ58yryGZzUwSLjIqM5T0z2MfgSz+KfhEckS1YcY=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=q1BG8w9PPDB1NFZMuqv7M0Lt6zCOOccDKk4LSEH/fGGvYcAr3ieHpffdGcYh3vTDd j5OzoLzh5TKFs2Ce0YMG+/5s2CmCEt7dy7fFBd3LqO3m2YdixpetQlc5mPxjMG3Z40 GFSJ6NVsCe4gnfvcbuCJrsnUnQQCpcTVo1EatEc5ZH5R+M/cC8G2wEWKNJ4vD3bWYt PxXIj1W3hiDAIQIZsbRsdh1ScRGYgrEKSdK8YBMjwcKLB6Ktpd5UvG0R7hHofhNKdE DqR/xYiTJWl7/mHLzrhfOkddt3ViP3isVs59lDur9oWBJd8wYKYTrKmsh3z/SRC+vR w88G1okk6oBMQ== Date: Wed, 16 Jun 2021 14:42:58 +0100 From: Will Deacon To: "liuqi (BA)" Cc: Linuxarm , mark.rutland@arm.com, bhelgaas@google.com, linux-pci@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, zhangshaokun@hisilicon.com Subject: Re: [PATCH v6 2/2] drivers/perf: hisi: Add driver for HiSilicon PCIe PMU Message-ID: <20210616134257.GA22905@willie-the-truck> References: <1622467951-32114-1-git-send-email-liuqi115@huawei.com> <1622467951-32114-3-git-send-email-liuqi115@huawei.com> <20210611162347.GA16284@willie-the-truck> <20210615093519.GB19878@willie-the-truck> <8e15e8d6-cfe8-0926-0ca1-b162302e52a5@huawei.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <8e15e8d6-cfe8-0926-0ca1-b162302e52a5@huawei.com> User-Agent: Mutt/1.10.1 (2018-07-13) X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210616_064303_625072_2637C28A X-CRM114-Status: GOOD ( 28.63 ) 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 SGksCgpPbiBXZWQsIEp1biAxNiwgMjAyMSBhdCAwOTo1NDoyM0FNICswODAwLCBsaXVxaSAoQkEp IHdyb3RlOgo+IE9uIDIwMjEvNi8xNSAxNzozNSwgV2lsbCBEZWFjb24gd3JvdGU6Cj4gPiBPbiBU dWUsIEp1biAxNSwgMjAyMSBhdCAwNDo1NzowOVBNICswODAwLCBsaXVxaSAoQkEpIHdyb3RlOgo+ ID4gPiBPbiAyMDIxLzYvMTIgMDoyMywgV2lsbCBEZWFjb24gd3JvdGU6Cj4gPiA+ID4gT24gTW9u LCBNYXkgMzEsIDIwMjEgYXQgMDk6MzI6MzFQTSArMDgwMCwgUWkgTGl1IHdyb3RlOgo+ID4gPiA+ ID4gKwkvKiBQcm9jZXNzIGRhdGEgdG8gc2V0IHVuaXQgb2YgbGF0ZW5jeSBhcyAidXMiLiAqLwo+ ID4gPiA+ID4gKwlpZiAoaXNfbGF0ZW5jeV9ldmVudChpZHgpKQo+ID4gPiA+ID4gKwkJcmV0dXJu IGRpdjY0X3U2NChkYXRhICogdXNfcGVyX2N5Y2xlLCBkYXRhX2V4dCk7Cj4gPiA+ID4gPiArCj4g PiA+ID4gPiArCWlmIChpc19idXNfdXRpbF9ldmVudChpZHgpKQo+ID4gPiA+ID4gKwkJcmV0dXJu IGRpdjY0X3U2NChkYXRhICogdXNfcGVyX2N5Y2xlLCBkYXRhX2V4dCk7Cj4gPiA+ID4gPiArCj4g PiA+ID4gPiArCWlmIChpc19idWZfdXRpbF9ldmVudChpZHgpKQo+ID4gPiA+ID4gKwkJcmV0dXJu IGRpdjY0X3U2NChkYXRhLCBkYXRhX2V4dCAqIHVzX3Blcl9jeWNsZSk7Cj4gPiA+ID4gCj4gPiA+ ID4gV2h5IGRvIHdlIG5lZWQgdG8gZG8gYWxsIHRoaXMgZGl2aXNpb24gaW4gdGhlIGtlcm5lbD8g Q2FuJ3Qgd2UganVzdCBleHBvc2UKPiA+ID4gPiB0aGUgdW5kZXJseWluZyB2YWx1ZXMgYW5kIGxl dCB1c2Vyc3BhY2UgZmlndXJlIG91dCB3aGF0IGl0IHdhbnRzIHRvIGRvIHdpdGgKPiA+ID4gPiB0 aGUgbnVtYmVycz8KPiA+ID4gPiAKPiA+ID4gT3VyIFBNVSBoYXJkd2FyZSBzdXBwb3J0IDggc2V0 cyBvZiBjb3VudGVycyB0byBjb3VudCBiYW5kd2lkdGgsIGxhdGVuY3kgYW5kCj4gPiA+IHV0aWxp emF0aW9uIGV2ZW50cy4KPiA+ID4gCj4gPiA+IEZvciBleGFtcGxlLCB3aGVuIHVzZXJzIHNldCBs YXRlbmN5IGV2ZW50LCBjb21tb24gY291bnRlciB3aWxsIGNvdW50IGRlbGF5Cj4gPiA+IGN5Y2xl cywgYW5kIGV4dGVybiBjb3VudGVyIGNvdW50IG51bWJlciBvZiBQQ0llIHBhY2tldHMgYXV0b21h dGljbHkuIEFuZCB3ZQo+ID4gPiBkbyBub3QgaGF2ZSBhIGV2ZW50IG51bWJlciBmb3IgY291bnRp bmcgbnVtYmVyIG9mIFBDSWUgcGFja2V0cy4KPiA+ID4gCj4gPiA+IFNvIHRoaXMgZGl2aXNpb24g Y2Fubm90IG1vdmUgdG8gdXNlcnNwYWNlIHRvb2wuCj4gPiAKPiA+IFdoeSBjYW4ndCB5b3UgZXhw b3NlIHRoZSBwYWNrZXQgY291bnRlciBhcyBhbiBleHRyYSBldmVudCB0byB1c2Vyc3BhY2U/Cj4g PiAKPiBNYXliZSBJIGRpZG7igJl0IGV4cHJlc3MgaXQgY2xlYXJseS4KPiAKPiBBcyB0aGVyZSBp cyBubyBoYXJkd2FyZSBldmVudCBudW1iZXIgZm9yIFBDSWUgcGFja2V0cyBjb3VudGluZywgZXh0 ZXJuCj4gY291bnRlciBjb3VudCBwYWNrZXRzICphdXRvbWF0aWNseSogd2hlbiBsYXRlbmN5IGV2 ZW50cyBpcyBzZWxlY3RlZCBieQo+IHVzZXJzLgo+IAo+IFRoaXMgbWVhbnMgdXNlcnMgY2Fubm90 IHNldCAiY29uZmlnPTB4WFgiIHRvIHN0YXJ0IHBhY2tldHMgY291bnRpbmcgZXZlbnQuCj4gU28g d2UgY2FuIG9ubHkgZ2V0IHRoZSB2YWx1ZSBvZiBjb3VudGVyIGFuZCBleHRlcm4gY291bnRlciBp biBkcml2ZXIgYW5kIGRvCj4gdGhlIGRpdmlzaW9uLCB0aGVuIHBhc3MgdGhlIHJlc3VsdCB0byB1 c2Vyc3BhY2UuCgpJIHN0aWxsIHRoaW5rIGl0IHdvdWxkIGJlIGlkZWFsIGlmIHdlIGNvdWxkIGV4 cG9zZSBib3RoIHZhbHVlcyB0byB1c2Vyc3BhY2UKcmF0aGVyIHRoYW4gY29tYmluZSB0aGVtIHNv bWVob3cuIEhtbS4gQW55d2F5Li4uCgpJIHN0cnVnZ2xlZCB0byBmaWd1cmUgb3V0IGV4YWN0bHkg d2hhdCdzIGJlaW5nIGNvdW50ZWQgZnJvbSB0aGUKZG9jdW1lbnRhdGlvbiBwYXRjaCAocGxlYXNl IHVwZGF0ZSB0aGF0KS4gUGxlYXNlIGNhbiB5b3UgZXhwbGFpbiBleGFjdGx5CndoYXQgYXBwZWFy cyBpbiB0aGUgSElTSV9QQ0lFX0NOVCBhbmQgSElTSV9QQ0lFX0VYVF9DTlQgcmVnaXN0ZXJzIGZv ciB0aGUKZGlmZmVyZW50IG1vZGVzIG9mIG9wZXJhdGlvbj8gV2l0aG91dCB0aGF0LCB0aGUgcmF0 aW9zIHlvdSd2ZSBjaG9zZW4gdG8KcmVwb3J0IHNlZW0gcmF0aGVyIGFyYml0cmFyeS4KCkkgYWxz byBjb3VsZG4ndCBmaWd1cmUgb3V0IGhvdyB0aGUgbGF0ZW5jeSBldmVudCB3b3Jrcy4gRm9yIGV4 YW1wbGUsIEkgd2FzCmFzc3VtaW5nIGl0IHdvdWxkIGJlIGEgZmlsdGVyIChhIGJpdCBsaWtlIHRo ZSBsZW5ndGgpLCBzbyB5b3UgY291bGQgc2F5CnRoaW5ncyBsaWtlICJJJ20gb25seSBpbnRlcmVz dGVkIGluIHBhY2tldHMgd2l0aCBhIGxhdGVuY3kgaGlnaGVyIHRoYW4geCIKYnV0IGl0IGRvZXNu J3QgbG9vayBsaWtlIGl0IHdvcmtzIHRoYXQgd2F5LgoKVGhhbmtzLAoKV2lsbAoKX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbGludXgtYXJtLWtlcm5lbCBt YWlsaW5nIGxpc3QKbGludXgtYXJtLWtlcm5lbEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9s aXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtYXJtLWtlcm5lbAo=