From: Kajol Jain <kjain@linux.ibm.com> To: acme@kernel.org, linuxppc-dev@lists.ozlabs.org, mpe@ellerman.id.au, sukadev@linux.vnet.ibm.com Cc: 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, kjain@linux.ibm.com Subject: [PATCH v4 0/8] powerpc/perf: Add json file metric support for the hv_24x7 socket/chip level events Date: Mon, 9 Mar 2020 11:55:44 +0530 [thread overview] Message-ID: <20200309062552.29911-1-kjain@linux.ibm.com> (raw) First patch of the patchset fix inconsistent results we are getting when we run multiple 24x7 events. 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 expose total number of sockets and chips per-socket details in sysfs files (sockets, chips) under "/sys/devices/hv_24x7/interface/". To get sockets and number of chips per sockets, patchset adds a rtas call with token "PROCESSOR_MODULE_INFO" to get these details. Patchset also handles partition migration case to re-init these system depended parameters by adding proper calls in post_mobility_fixup() (mobility.c). Patch 6 & 8 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. Changelog: v3 -> v4 - Made changes suggested by jiri. - Apply these patch on top of Kan liang changes. 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 Kajol Jain (8): powerpc/perf/hv-24x7: Fix inconsistent output values incase multiple hv-24x7 events run powerpc/hv-24x7: Add rtas call in hv-24x7 driver to get processor details powerpc/hv-24x7: Add sysfs files inside hv-24x7 device to show processor details Documentation/ABI: Add ABI documentation for chips and sockets powerpc/hv-24x7: Update post_mobility_fixup() to handle migration perf/tools: Enhance JSON/metric infrastructure to handle "?" tools/perf: Enable Hz/hz prinitg for --metric-only option perf/tools/pmu-events/powerpc: Add hv_24x7 socket/chip level metric events .../sysfs-bus-event_source-devices-hv_24x7 | 14 ++ arch/powerpc/perf/hv-24x7.c | 104 +++++++++++++-- arch/powerpc/platforms/pseries/mobility.c | 12 ++ arch/powerpc/platforms/pseries/pseries.h | 3 + tools/perf/arch/powerpc/util/header.c | 22 ++++ .../arch/powerpc/power9/nest_metrics.json | 19 +++ tools/perf/util/expr.h | 1 + tools/perf/util/expr.l | 19 ++- tools/perf/util/metricgroup.c | 124 ++++++++++++++---- tools/perf/util/metricgroup.h | 1 + tools/perf/util/stat-display.c | 2 - tools/perf/util/stat-shadow.c | 8 ++ 12 files changed, 290 insertions(+), 39 deletions(-) create mode 100644 tools/perf/pmu-events/arch/powerpc/power9/nest_metrics.json -- 2.18.1
WARNING: multiple messages have this Message-ID (diff)
From: Kajol Jain <kjain@linux.ibm.com> To: acme@kernel.org, linuxppc-dev@lists.ozlabs.org, mpe@ellerman.id.au, sukadev@linux.vnet.ibm.com Cc: mark.rutland@arm.com, maddy@linux.vnet.ibm.com, peterz@infradead.org, yao.jin@linux.intel.com, mingo@kernel.org, kan.liang@linux.intel.com, ak@linux.intel.com, alexander.shishkin@linux.intel.com, anju@linux.vnet.ibm.com, mamatha4@linux.vnet.ibm.com, ravi.bangoria@linux.ibm.com, kjain@linux.ibm.com, jmario@redhat.com, namhyung@kernel.org, tglx@linutronix.de, mpetlan@redhat.com, gregkh@linuxfoundation.org, linux-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org, jolsa@kernel.org Subject: [PATCH v4 0/8] powerpc/perf: Add json file metric support for the hv_24x7 socket/chip level events Date: Mon, 9 Mar 2020 11:55:44 +0530 [thread overview] Message-ID: <20200309062552.29911-1-kjain@linux.ibm.com> (raw) First patch of the patchset fix inconsistent results we are getting when we run multiple 24x7 events. 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 expose total number of sockets and chips per-socket details in sysfs files (sockets, chips) under "/sys/devices/hv_24x7/interface/". To get sockets and number of chips per sockets, patchset adds a rtas call with token "PROCESSOR_MODULE_INFO" to get these details. Patchset also handles partition migration case to re-init these system depended parameters by adding proper calls in post_mobility_fixup() (mobility.c). Patch 6 & 8 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. Changelog: v3 -> v4 - Made changes suggested by jiri. - Apply these patch on top of Kan liang changes. 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 Kajol Jain (8): powerpc/perf/hv-24x7: Fix inconsistent output values incase multiple hv-24x7 events run powerpc/hv-24x7: Add rtas call in hv-24x7 driver to get processor details powerpc/hv-24x7: Add sysfs files inside hv-24x7 device to show processor details Documentation/ABI: Add ABI documentation for chips and sockets powerpc/hv-24x7: Update post_mobility_fixup() to handle migration perf/tools: Enhance JSON/metric infrastructure to handle "?" tools/perf: Enable Hz/hz prinitg for --metric-only option perf/tools/pmu-events/powerpc: Add hv_24x7 socket/chip level metric events .../sysfs-bus-event_source-devices-hv_24x7 | 14 ++ arch/powerpc/perf/hv-24x7.c | 104 +++++++++++++-- arch/powerpc/platforms/pseries/mobility.c | 12 ++ arch/powerpc/platforms/pseries/pseries.h | 3 + tools/perf/arch/powerpc/util/header.c | 22 ++++ .../arch/powerpc/power9/nest_metrics.json | 19 +++ tools/perf/util/expr.h | 1 + tools/perf/util/expr.l | 19 ++- tools/perf/util/metricgroup.c | 124 ++++++++++++++---- tools/perf/util/metricgroup.h | 1 + tools/perf/util/stat-display.c | 2 - tools/perf/util/stat-shadow.c | 8 ++ 12 files changed, 290 insertions(+), 39 deletions(-) create mode 100644 tools/perf/pmu-events/arch/powerpc/power9/nest_metrics.json -- 2.18.1
next reply other threads:[~2020-03-09 6:26 UTC|newest] Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-03-09 6:25 Kajol Jain [this message] 2020-03-09 6:25 ` [PATCH v4 0/8] powerpc/perf: Add json file metric support for the hv_24x7 socket/chip level events Kajol Jain 2020-03-09 6:25 ` [PATCH v4 1/8] powerpc/perf/hv-24x7: Fix inconsistent output values incase multiple hv-24x7 events run Kajol Jain 2020-03-09 6:25 ` Kajol Jain 2020-03-09 6:25 ` [PATCH v4 2/8] powerpc/hv-24x7: Add rtas call in hv-24x7 driver to get processor details Kajol Jain 2020-03-09 6:25 ` Kajol Jain 2020-03-09 6:25 ` [PATCH v4 3/8] powerpc/hv-24x7: Add sysfs files inside hv-24x7 device to show " Kajol Jain 2020-03-09 6:25 ` Kajol Jain 2020-03-09 6:25 ` [PATCH v4 4/8] Documentation/ABI: Add ABI documentation for chips and sockets Kajol Jain 2020-03-09 6:25 ` Kajol Jain 2020-03-09 6:25 ` [PATCH v4 5/8] powerpc/hv-24x7: Update post_mobility_fixup() to handle migration Kajol Jain 2020-03-09 6:25 ` Kajol Jain 2020-03-09 6:25 ` [PATCH v4 6/8] perf/tools: Enhance JSON/metric infrastructure to handle "?" Kajol Jain 2020-03-09 6:25 ` Kajol Jain 2020-03-10 18:34 ` Arnaldo Carvalho de Melo 2020-03-10 18:34 ` Arnaldo Carvalho de Melo 2020-03-12 6:11 ` kajoljain 2020-03-12 6:11 ` kajoljain 2020-03-12 10:51 ` Jiri Olsa 2020-03-12 10:51 ` Jiri Olsa 2020-03-12 10:50 ` Jiri Olsa 2020-03-12 10:50 ` Jiri Olsa 2020-03-12 10:51 ` Jiri Olsa 2020-03-12 10:51 ` Jiri Olsa 2020-03-12 10:52 ` Jiri Olsa 2020-03-12 10:52 ` Jiri Olsa 2020-03-13 12:26 ` kajoljain 2020-03-13 12:26 ` kajoljain 2020-03-12 10:52 ` Jiri Olsa 2020-03-12 10:52 ` Jiri Olsa 2020-03-09 6:25 ` [PATCH v4 7/8] tools/perf: Enable Hz/hz prinitg for --metric-only option Kajol Jain 2020-03-09 6:25 ` Kajol Jain 2020-03-09 6:25 ` [PATCH v4 8/8] perf/tools/pmu-events/powerpc: Add hv_24x7 socket/chip level metric events Kajol Jain 2020-03-09 6:25 ` Kajol Jain 2020-03-09 9:35 ` [PATCH v4 0/8] powerpc/perf: Add json file metric support for the hv_24x7 socket/chip level events Jiri Olsa 2020-03-09 9:35 ` Jiri Olsa 2020-03-09 11:22 ` Arnaldo Melo 2020-03-09 11:22 ` Arnaldo Melo 2020-03-10 18:18 ` Arnaldo Carvalho de Melo 2020-03-10 18:18 ` Arnaldo Carvalho de Melo 2020-03-10 18:31 ` Jiri Olsa 2020-03-10 18:31 ` Jiri Olsa
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20200309062552.29911-1-kjain@linux.ibm.com \ --to=kjain@linux.ibm.com \ --cc=acme@kernel.org \ --cc=ak@linux.intel.com \ --cc=alexander.shishkin@linux.intel.com \ --cc=anju@linux.vnet.ibm.com \ --cc=benh@kernel.crashing.org \ --cc=gregkh@linuxfoundation.org \ --cc=jmario@redhat.com \ --cc=jolsa@kernel.org \ --cc=kan.liang@linux.intel.com \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-perf-users@vger.kernel.org \ --cc=linuxppc-dev@lists.ozlabs.org \ --cc=maddy@linux.vnet.ibm.com \ --cc=mamatha4@linux.vnet.ibm.com \ --cc=mark.rutland@arm.com \ --cc=mingo@kernel.org \ --cc=mpe@ellerman.id.au \ --cc=mpetlan@redhat.com \ --cc=namhyung@kernel.org \ --cc=paulus@ozlabs.org \ --cc=peterz@infradead.org \ --cc=ravi.bangoria@linux.ibm.com \ --cc=sukadev@linux.vnet.ibm.com \ --cc=tglx@linutronix.de \ --cc=yao.jin@linux.intel.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.