[PATCH v10 0/5] powerpc/hv-24x7: Expose chip/sockets info to add json file metric support for the hv_24x7 socket/chip level events
Kajol Jain
kjain at linux.ibm.com
Mon May 25 20:43:02 AEST 2020
Patchset fixes the inconsistent results we are getting when
we run multiple 24x7 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 number of sockets, chips per sockets and cores per chip
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).
Changelog:
v9 -> v10
- Change function name from 'read_sys_info_pseries()' to
'read_24x7_sys_info()'.
- Remove rtas_local_data_buf use, as we can directly use
rtas_data_buf itself as we just need to do few loads and it
also remove overload of memcpy in the lock
Suggested by: Michael Ellerman.
- Move part of updating 24x7 system info variables inside
'rtas_data_buf_lock' and make sure we release spinlock in each case.
- Added Tested-by: Madhavan Srinivasan tag for patch 1
v8 -> v9
- As we not need 8k data buffer we also not require new lock and
buffer size. So, removed that part.
- Since we are using rtas_data_buf itself for rtas call, Switch to
kmalloc for data buffer so that we can free that memory.
- Made more changes as suggested by Nathan Lynch.
v7 -> v8
- Add support for exposing cores per details as well.
Suggested by: Madhavan Srinivasan.
- Remove config check for 'CONFIG_PPC_RTAS' in previous
implementation and address other comments by Michael Ellerman.
v6 -> v7
- Split patchset into two patch series, one with kernel changes
and another with perf tool side changes. This pachset contain
all kernel side changes.
Kajol Jain (5):
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/pseries: Update hv-24x7 information after migration
.../sysfs-bus-event_source-devices-hv_24x7 | 21 ++++
arch/powerpc/include/asm/rtas.h | 6 ++
arch/powerpc/perf/hv-24x7.c | 98 +++++++++++++++++--
arch/powerpc/platforms/pseries/mobility.c | 3 +
4 files changed, 118 insertions(+), 10 deletions(-)
--
2.18.2
More information about the Linuxppc-dev
mailing list