Received: by 10.213.65.68 with SMTP id h4csp1147592imn; Wed, 21 Mar 2018 04:00:19 -0700 (PDT) X-Google-Smtp-Source: AG47ELsSbMTabjDC4ZAkXlL0dxmTIMjAHUViyUAmfTC+0nMhDoEz/zkmxbTJPW8dTgLd3F2SyOPe X-Received: by 2002:a17:902:6a89:: with SMTP id n9-v6mr20390811plk.51.1521630019891; Wed, 21 Mar 2018 04:00:19 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1521630019; cv=none; d=google.com; s=arc-20160816; b=IsVChxvolVbn7ACUOZKOSvrSD7xIBMUqkseM0eLjbE5ohsjehovSs9d1wz/HyvD1Iu jhekFsQ45b9sqytcHif9JmHiI0hrp212DFvlPli7MgmpzpKiqOGrrKF2v0ojebOTbPdL UtHlyvHoL+sHufI7eLxEwmkNZLuNnhkJdbtxv+BR+OS1ROY3WQorBL/+5UO55AuFYuh4 ASlsX50VRuITEENM+cnPjQjnxKkmPRmszEClwarCxHxZYL5rErbQf2loQXj3LB/XEeAh KmeVtcGK/Jc+qT1VUA+An7DF0RzymKQB3nxTmrw//QeldgNRzwoF5KiGU/O8J6Ad8Zd7 ANIw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:in-reply-to :mime-version:user-agent:date:message-id:from:cc:references:to :subject:arc-authentication-results; bh=KSwMiDTurfMbB3CHCvuPeT+n8MepDpXAmZ2JJOW92/A=; b=s/gXVSpXRHB+VzO+qHSHzdYwiVVa5sG8LV0PhvdVC4g6ahpw74GGlPLQgePzxW0Hau 9W4RdF2l3Yruqp2Nj1MxNWrkrClg65+L2sDCLvxdjHXPdp24b8x2ceCcHdhiT4EdFos4 setDnKJHkH76dE1wh8/X8SoqYi8RLS5UHRjKYdkelrs3EUMgYeoDbGvN3i2vuAohBv0N IdDgo6wr4MVffLg1odwfAEid1K4IKaY5u9ve0stWvPzCMbiX4C1Kz/GJHtY4spcTNWdo AWQrHQ0scFncaXqdyBEzL74N2Z2W1qqnf2LSrAuwHgi2TXQO5knqCD7qoR+JCyYSvDzR g/uQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id y19si2890353pfm.63.2018.03.21.04.00.03; Wed, 21 Mar 2018 04:00:19 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751542AbeCUK7E (ORCPT + 99 others); Wed, 21 Mar 2018 06:59:04 -0400 Received: from szxga05-in.huawei.com ([45.249.212.191]:6254 "EHLO huawei.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751405AbeCUK7C (ORCPT ); Wed, 21 Mar 2018 06:59:02 -0400 Received: from DGGEMS402-HUB.china.huawei.com (unknown [172.30.72.58]) by Forcepoint Email with ESMTP id DB6345BFB0946; Wed, 21 Mar 2018 18:58:46 +0800 (CST) Received: from [127.0.0.1] (10.202.227.238) by DGGEMS402-HUB.china.huawei.com (10.3.19.202) with Microsoft SMTP Server id 14.3.361.1; Wed, 21 Mar 2018 18:58:43 +0800 Subject: Re: [PATCH] perf vendor events arm64: Enable JSON events for ThunderX2 B0 To: William Cohen , Ganapatrao Kulkarni References: <20180307110803.32418-1-ganapatrao.kulkarni@cavium.com> <3384d33f-c927-740a-97f1-b20775ef2c7b@redhat.com> <20180307143832.GJ3701@kernel.org> <52328144-3a2a-af03-273b-3a2f3bdadda6@redhat.com> <2a84ec0e-dc8c-7e2e-64e5-4ea48ba6da49@redhat.com> <5b918449-b7b1-dbe1-e6e2-46486116dc65@huawei.com> <6bfce413-0fb8-e89c-7400-0704f29f236e@redhat.com> CC: , Alexander Shishkin , Will Deacon , , Arnaldo Carvalho de Melo , Peter Zijlstra , Robert Richter , Ingo Molnar , , Ganapatrao Kulkarni , Jiri Olsa , From: John Garry Message-ID: <7b85a13a-b9e9-a6d7-ec8f-75630eb7c537@huawei.com> Date: Wed, 21 Mar 2018 10:58:35 +0000 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.3.0 MIME-Version: 1.0 In-Reply-To: <6bfce413-0fb8-e89c-7400-0704f29f236e@redhat.com> Content-Type: text/plain; charset="windows-1252"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [10.202.227.238] X-CFilter-Loop: Reflected Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 21/03/2018 02:37, William Cohen wrote: > On 03/15/2018 12:47 PM, John Garry wrote: >> On 15/03/2018 15:53, William Cohen wrote: >>> On 03/07/2018 11:14 PM, Ganapatrao Kulkarni wrote: >>>> On Thu, Mar 8, 2018 at 12:01 AM, William Cohen wrote: >>>>> On 03/07/2018 12:35 PM, Ganapatrao Kulkarni wrote: >>>>>> Hi Will Cohen, >>>>>> >>>>>> On Wed, Mar 7, 2018 at 8:08 PM, Arnaldo Carvalho de Melo >>>>>> wrote: >>>>>>> Em Wed, Mar 07, 2018 at 09:32:05AM -0500, William Cohen escreveu: >>>>>>>> On 03/07/2018 06:08 AM, Ganapatrao Kulkarni wrote: >>>>>>>>> There is MIDR change on ThunderX2 B0, adding an entry to mapfile >>>>>>>>> to enable JSON events for B0. >>>>>>>>> >>>>>>>>> Signed-off-by: Ganapatrao Kulkarni >>>>>>> >>>>>>> Ganapatrao, can you please take this in consideration and if agreeing >>>>>>> send a v2 patch? >>>>>>> >>>>>>> With that I can add an Acked-by: wcohen, Right? >>>>>>> >>>>>>> - Arnaldo >>>>>>>>> --- >>>>>>>>> tools/perf/pmu-events/arch/arm64/mapfile.csv | 1 + >>>>>>>>> 1 file changed, 1 insertion(+) >>>>>>>>> >>>>>>>>> diff --git a/tools/perf/pmu-events/arch/arm64/mapfile.csv b/tools/perf/pmu-events/arch/arm64/mapfile.csv >>>>>>>>> index e61c9ca..93c5d14 100644 >>>>>>>>> --- a/tools/perf/pmu-events/arch/arm64/mapfile.csv >>>>>>>>> +++ b/tools/perf/pmu-events/arch/arm64/mapfile.csv >>>>>>>>> @@ -13,4 +13,5 @@ >>>>>>>>> # >>>>>>>>> #Family-model,Version,Filename,EventType >>>>>>>>> 0x00000000420f5160,v1,cavium,core >>>>>>>>> +0x00000000430f0af0,v1,cavium,core >>>>>>>>> 0x00000000410fd03[[:xdigit:]],v1,cortex-a53,core >>>>>>>>> >>>>>>>> >>>>>>>> Hi, >>>>>>>> Like the cortex-a53 the last digit '0' of the match for the MIDR should be replaced with [[:xdigit:]] to allow for possible future revisions of chip: >>>>>> >>>>>> for arm64 implementation, bits 3:0(Revision) and bits 23:20(Variant) >>>>>> are ignored/dont-care. >>>>> >>>>> Thanks for pointing that out. See the code masking out those bits in linux/toos/perf/arch/util/header.c. For the ppc64 it just copies the equivalent of the MIDR including the revision bits. Thus, the need for regular expression matching to avoid having to create a new entry for each revision. >>>> >>>> It is same for arm64 too, there is no need to add an entry for every >>>> revision change, need to add when part number changes. >>>> This patch is not intended to add entry for revision change, the fact >>>> of the matter is that, there is complete MIDR change (vulcan to >>>> thunderx2) in B0. >>>> as per current arm64 >>>> implementation(.tools/perf/arch/arm64/util/header.c), it is not >>>> required to have any dontcare marking in mapfile for revision/variant >>>> bits. >>>> >>>> thanks >>>> Ganapat >>> >>> Hi Ganapat, >>> >>> Would it make more sense to pass the MIDR value unmodified and then use regular expressions in mapfile.csv to match the values? If an event on a particular processor revision is broken or unusable it can be excluded from the list of events with a corrected list of events. There certainly have been errata listing events that do not work on specific revisions of armv8 processor implementations. >>> >> >> Then there are vendors who do not always properly implemenent MIDR or IIDRs (people who live in glass houses...). >> >> Btw, topic originally discussed here: >> https://lkml.org/lkml/2017/5/2/113 >> >> Thanks, >> John >> >>> -Will > > Hi John, > > Attached is a patch that leaves the MIDR value unmodified and uses regular expressions in the mapfile.csv instead to ignore those bits. I have verified that the changes work on ARM Cortex a53 processor. Does it look reasonable? > Hi Will, This looks ok. Personally I find the regular expression in the cpuid slightly difficult to read. I mean, for example, for the revision digit we are using a 12-char regular expression in place, which warps the cpuid string length. BTW, can you also update the pmu events README to mention that posix regular expressions in the CPUID are acceptable? Thanks, John > -Will Cohen > > > > _______________________________________________ > linux-arm-kernel mailing list > linux-arm-kernel@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel >