Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp695182ybz; Wed, 29 Apr 2020 07:49:03 -0700 (PDT) X-Google-Smtp-Source: APiQypIAsgefKcPFoZ+wQVmGHZeC+iUZszbbT6c2559qEGpOcuIbnGLNVD40sV18I4gmqpCja1nA X-Received: by 2002:a17:906:da1b:: with SMTP id fi27mr2890739ejb.194.1588171743776; Wed, 29 Apr 2020 07:49:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1588171743; cv=none; d=google.com; s=arc-20160816; b=Y3yLFGa8hnjJaI2BdYHTFa4IkqnU6Z/f/t6OtP6UN/t1g3F3j1hqI/x7n/jNyrUWs8 uBB0gfJ9Cuby+R8fNwXfQZqY0tLqfAiEAofPX6LXKhryzzeSInlF/lNFDg0s+MJc/xeN UMaB2AGlvwyOguPvtBES8kBaI9oNz8newEETXSGW/1KnuggK5s22mN/jc9sIC+ftQTNo NSKnfQyLXFdSDJj9qdg173Skl//PDMqivtrEdZwX/PDISPjSIEKoNJEJp8APOuEffjMh OkQDrop6Nu4SLVY4hQnbcYJMAQvJ/E8+i2LaCl8/4rG6e/3hYhZqQeckVHMuLxBVgw36 sNHw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:date:from :dkim-signature; bh=uegLoaGJrRXIo3UvM2TnGR4muRuT5O7FyR/8C1ZUKP8=; b=yZvb/33cDITtvWEtABhLpMIBzkkau3S4Ycs7H4eFudAQ/7FQvPBcmJCJnwmUb1BbNd SweTm6NYwXeYwUzxsliwDzRsuQu1tbqKFE+oGTBEWDpEw3ytBGb4tMIeTfzpjzZW1++c OVvSEoWtC5oqJrMVNxDXcqGv+q8MTbfCXlT2W2b6S/9oO4yeRcJZ4JOpcfZ/63OQVEAn Ofa3phQwXOFTX38UL0cw0EhdPUJSeE3Eo77ZawUsyAUKi6fiDtv/x+4lw9L/+POymKwI nsEznzAg3J/DVoLowsDwcrtqP4H1/4Zv6caQpPqy1IJf9bwtIIFPLOmMuKG5X/B3qYYH k60A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=joG3GSna; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id cm24si3548722edb.586.2020.04.29.07.48.40; Wed, 29 Apr 2020 07:49:03 -0700 (PDT) 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; dkim=pass header.i=@gmail.com header.s=20161025 header.b=joG3GSna; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727030AbgD2Oqv (ORCPT + 99 others); Wed, 29 Apr 2020 10:46:51 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35888 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1726539AbgD2Oqu (ORCPT ); Wed, 29 Apr 2020 10:46:50 -0400 Received: from mail-qk1-x743.google.com (mail-qk1-x743.google.com [IPv6:2607:f8b0:4864:20::743]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 530C3C03C1AE; Wed, 29 Apr 2020 07:46:50 -0700 (PDT) Received: by mail-qk1-x743.google.com with SMTP id g74so2157832qke.13; Wed, 29 Apr 2020 07:46:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:date:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to; bh=uegLoaGJrRXIo3UvM2TnGR4muRuT5O7FyR/8C1ZUKP8=; b=joG3GSnaYBRZhQbM/qg0tvQ7SRIXV9GktxzsWx7uXY1s4sG+Ivfjy5AOx1iypz2Au+ dqmvvUt7BtBVODy/ne9bgiKNGhFXRiQO/u3FFGljz9llwgiuxDIrb3LMfVsw6AujxdKx e3f4eYHt8Se4O7j4JPsfZTJ3b5bhv9YBXME4gRH+NnJAhOsW6PqnuaXnTF+ubhkISOKt KT9Qc+7dyHqm3y4TzW15vo3OggYUbs7LlMAYJXVkPwhhe/jJlOR0HZmLocoM5Goyqile 0sBz/Q1q/gEeehlat8p1V8DeQ2tcVJOvY4yemRrxVYU4D6Yd/OvFeVj+pphtJsgfClYH Wxow== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:date:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=uegLoaGJrRXIo3UvM2TnGR4muRuT5O7FyR/8C1ZUKP8=; b=aHpzwnRlvFG7LR0UFsU1FgOrgj5xUo1ipkcQ/fP5ItkKawG3ZUECTf1B9+ZgRAU7de ZSY2l0V/AS2q8qoBzZniUswoYk/flK9A+x+3qDPavi9MsGuqhjeJ+SI8Svmd+eqle1H/ j0vq7YALLGsKBqat7ZZM4zNnbH48XwzYlxCaUPRrBT+vKY+mFJmNnVqXRa2mJ2TE5Ub6 dJRy2EQsyyn14HQlVb1eNONAW/HP76rsKGqv0l7ZrIKU2XD9s4+0FM69vXSr4cGDvJLA ggVousk1zkE2HbpLFmn4AzRgs6LOeyG/C4C2bYCnGGy69dhjPDaog9WhmmiSO6D4w6A6 gBaw== X-Gm-Message-State: AGi0Pua457TM77sJlITEcBl3jCijoEimXHrTjlnRmsBPZiagWdi6AAug ZL8LHB013WJFxIicT8D9kL0= X-Received: by 2002:a37:5143:: with SMTP id f64mr16629748qkb.155.1588171609206; Wed, 29 Apr 2020 07:46:49 -0700 (PDT) Received: from quaco.ghostprotocols.net ([179.97.37.151]) by smtp.gmail.com with ESMTPSA id o27sm15860313qko.71.2020.04.29.07.46.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Apr 2020 07:46:48 -0700 (PDT) From: Arnaldo Carvalho de Melo X-Google-Original-From: Arnaldo Carvalho de Melo Received: by quaco.ghostprotocols.net (Postfix, from userid 1000) id 0DC14409A3; Wed, 29 Apr 2020 11:46:46 -0300 (-03) Date: Wed, 29 Apr 2020 11:46:46 -0300 To: kajoljain Cc: linuxppc-dev@lists.ozlabs.org, mpe@ellerman.id.au, sukadev@linux.vnet.ibm.com, linux-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org, anju@linux.vnet.ibm.com, maddy@linux.vnet.ibm.com, ravi.bangoria@linux.ibm.com, peterz@infradead.org, yao.jin@linux.intel.com, ak@linux.intel.com, jolsa@kernel.org, kan.liang@linux.intel.com, jmario@redhat.com, alexander.shishkin@linux.intel.com, mingo@kernel.org, paulus@ozlabs.org, namhyung@kernel.org, mpetlan@redhat.com, gregkh@linuxfoundation.org, benh@kernel.crashing.org, mamatha4@linux.vnet.ibm.com, mark.rutland@arm.com, tglx@linutronix.de Subject: Re: [PATCH v8 0/7] powerpc/perf: Add json file metric support for the hv_24x7 socket/chip level events Message-ID: <20200429144646.GA30487@kernel.org> References: <20200401203340.31402-1-kjain@linux.ibm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Url: http://acmel.wordpress.com Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Em Tue, Apr 28, 2020 at 12:02:42PM +0530, kajoljain escreveu: > Hi Arnaldo, > Please let me know if there any changes required in this patchset, > as some of its patches are still not part of your perf/core tree. Thanks, I checked and all seems ok, added Jiri's Acked-by, appreciated, thanks, - Arnaldo > Thanks, > Kajol Jain > > On 4/2/20 2:03 AM, Kajol Jain wrote: > > Patchset adds json file metric support for the hv_24x7 socket/chip level > > events. "hv_24x7" pmu interface events needs system dependent parameter > > like socket/chip/core. For example, hv_24x7 chip level events needs > > specific chip-id to which the data is requested should be added as part > > of pmu events. > > > > So to enable JSON file support to "hv_24x7" interface, patchset reads > > total number of sockets details in sysfs under > > "/sys/devices/hv_24x7/interface/". > > > > Second patch of the patchset adds expr_scanner_ctx object to hold user > > data for the expr scanner, which can be used to hold runtime parameter. > > > > Patch 4 & 6 of the patchset handles perf tool plumbing needed to replace > > the "?" character in the metric expression to proper value and hv_24x7 > > json metric file for different Socket/chip resources. > > > > Patch set also enable Hz/hz prinitg for --metric-only option to print > > metric data for bus frequency. > > > > Applied and tested all these patches cleanly on top of jiri's flex changes > > with the changes done by Kan Liang for "Support metric group constraint" > > patchset and made required changes. > > > > Also apply this patch on top of the fix patch send earlier > > for printing metric name incase overlapping events. > > https://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git/commit/?h=perf/core&id=37cd7f65bf71a48f25eeb6d9be5dacb20d008ea6 > > > > Changelog: > > v7 -> v8 > > - Add test case for testing parsing of "?" in metric expression > > - Reaname variables name to runtime > > > > v6 -> v7 > > - Spit patchset into two patch series one for kernel changes and other > > for tool side changes. > > - Made changes Suggested by Jiri, including rather then reading runtime > > parameter from metric name, actually add it in structure egroup and > > metric_expr. > > - As we don't need to read runtime parameter from metric name, > > now I am not appending it and rather just printing it in > > generic_metric function. > > > > Kernel Side changes patch series: https://lkml.org/lkml/2020/3/27/58 > > > > v5 -> v6 > > - resolve compilation issue due to rearranging patch series. > > - Rather then adding new function to take careof case for runtime param > > in metricgroup__add_metric, using metricgroup__add_metric_param itself > > for that work. > > - Address some optimization suggested like using directly file path > > rather then adding new macro in header.c > > - Change commit message on patch where we are adding "?" support > > by adding simple example. > > > > v4 -> v5 > > - Using sysfs__read_int instead of sysfs__read_ull while reading > > parameter value in powerpc/util/header.c file. > > > > - Using asprintf rather then malloc and sprintf > > Suggested by Arnaldo Carvalho de Melo > > > > - Break patch 6 from previous version to two patch, > > - One to add refactor current "metricgroup__add_metric" function > > and another where actually "?" handling infra added. > > > > - Add expr__runtimeparam as part of 'expr_scanner_ctx' struct > > rather then making it global variable. Thanks Jiri for > > adding this structure to hold user data for the expr scanner. > > > > - Add runtime param as agrugement to function 'expr__find_other' > > and 'expr__parse' and made changes on references accordingly. > > > > v3 -> v4 > > - Apply these patch on top of Kan liang changes. > > As suggested by Jiri. > > > > v2 -> v3 > > - Remove setting event_count to 0 part in function 'h_24x7_event_read' > > with comment rather then adding 0 to event_count value. > > Suggested by: Sukadev Bhattiprolu > > > > - Apply tool side changes require to replace "?" on Jiri's flex patch > > series and made all require changes to make it compatible with added > > flex change. > > > > v1 -> v2 > > - Rename hv-24x7 metric json file as nest_metrics.json > > > > Jiri Olsa (2): > > perf expr: Add expr_ prefix for parse_ctx and parse_id > > perf expr: Add expr_scanner_ctx object > > > > Kajol Jain (5): > > perf/tools: Refactoring metricgroup__add_metric function > > perf/tools: Enhance JSON/metric infrastructure to handle "?" > > perf/tests/expr: Added test for runtime param in metric expression > > tools/perf: Enable Hz/hz prinitg for --metric-only option > > perf/tools/pmu-events/powerpc: Add hv_24x7 socket/chip level metric > > events > > > > tools/perf/arch/powerpc/util/header.c | 8 ++ > > .../arch/powerpc/power9/nest_metrics.json | 19 +++++ > > tools/perf/tests/expr.c | 20 +++-- > > tools/perf/util/expr.c | 25 +++--- > > tools/perf/util/expr.h | 19 +++-- > > tools/perf/util/expr.l | 37 ++++++--- > > tools/perf/util/expr.y | 6 +- > > tools/perf/util/metricgroup.c | 78 +++++++++++++------ > > tools/perf/util/metricgroup.h | 2 + > > tools/perf/util/stat-display.c | 2 - > > tools/perf/util/stat-shadow.c | 19 +++-- > > 11 files changed, 164 insertions(+), 71 deletions(-) > > create mode 100644 tools/perf/pmu-events/arch/powerpc/power9/nest_metrics.json > > -- - Arnaldo