[PATCH v2 00/30] Add parents to struct pmu -> dev

From: Jonathan Cameron
Date: Fri Apr 12 2024 - 12:11:09 EST


Robin posted a patch for the cmn and that reminded me that I never
sent a v2.

v2: Drop first patch that added a parent to struct pmu as that has been
upstream for a year.
Drop the arm-cmn change as Robin has dealt with that one.
Gathered tags.

Updated cover letter:

These are the low hanging fruit following GregKH's feedback that
all the devices registered via perf_pmu_register() should have parents.

Note that this causes potential ABI breakage.

It may fall in the category of it isn't breakage if no one notices
but I can't be certain of that. Whilst it is arguable that
no one should be been accessing PMUs except via the event_source
bus, there was documentation suggesting /sys/devices/ for particular
PMUs (because it was a shorter path?)

Addressing all the other instances of struct pmu not covered by this series
is likely to be a more complex discussion but unlikely to have an affect
on what is proposed here.

Documentation updates deliberately 'fixed' in separate patches before
changing the path to highlight that using /sys/bus/event_source/devices
path is unchanged by this series and that is presumed to be the
most common way these files are accessed.

Jonathan Cameron (30):
perf/hisi-pcie: Assign parent for event_source device
Documentation: hisi-pmu: Drop reference to /sys/devices path
perf/hisi-uncore: Assign parents for event_source devices
Documentation: hns-pmu: Use /sys/bus/event_source/devices paths
perf/hisi-hns3: Assign parents for event_source device
perf/amlogic: Assign parents for event_source devices
perf/arm_cspmu: Assign parents for event_source devices
Documentation: xgene-pmu: Use /sys/bus/event_source/devices paths
perf/xgene: Assign parents for event_source devices
Documentation: thunderx2-pmu: Use /sys/bus/event_source/devices paths
perf/thunderx2: Assign parents for event_source devices
perf/riscv: Assign parents for event_source devices
Documentation: qcom-pmu: Use /sys/bus/event_source/devices paths
perf/qcom: Assign parents for event_source devices
perf/imx_ddr: Assign parents for event_source devices
perf/arm_pmu: Assign parents for event_source devices
perf/alibaba_uncore: Assign parents for event_source device
perf/arm-cci: Assign parents for event_source device
perf/arm-ccn: Assign parents for event_source device
perf/arm-dmc620: Assign parents for event_source device
perf/arm-dsu: Assign parents for event_source device
perf/arm-smmuv3: Assign parents for event_source device
perf/arm-spe: Assign parents for event_source device
arc: Assign parents for event_source devices
ARM: imx: Assign parents for mmdc event_source devices
dmaengine: idxd: Assign parent for event_source device
fpga: dfl: Assign parent for event_source device
drivers/nvdimm: Assign parent for event_source device
Documentation: ABI + trace: hisi_ptt: update paths to bus/event_source
hwtracing: hisi_ptt: Assign parent for event_source device

...i_ptt => sysfs-bus-event_source-devices-hisi_ptt} | 12 ++++++------
Documentation/admin-guide/perf/hisi-pmu.rst | 1 -
Documentation/admin-guide/perf/hns3-pmu.rst | 8 ++++----
Documentation/admin-guide/perf/qcom_l2_pmu.rst | 2 +-
Documentation/admin-guide/perf/qcom_l3_pmu.rst | 2 +-
Documentation/admin-guide/perf/thunderx2-pmu.rst | 2 +-
Documentation/admin-guide/perf/xgene-pmu.rst | 2 +-
Documentation/trace/hisi-ptt.rst | 4 ++--
MAINTAINERS | 2 +-
arch/arc/kernel/perf_event.c | 1 +
arch/arm/mach-imx/mmdc.c | 1 +
drivers/dma/idxd/perfmon.c | 1 +
drivers/fpga/dfl-fme-perf.c | 1 +
drivers/hwtracing/ptt/hisi_ptt.c | 1 +
drivers/nvdimm/nd_perf.c | 1 +
drivers/perf/alibaba_uncore_drw_pmu.c | 1 +
drivers/perf/amlogic/meson_ddr_pmu_core.c | 1 +
drivers/perf/arm-cci.c | 1 +
drivers/perf/arm-ccn.c | 1 +
drivers/perf/arm_cspmu/arm_cspmu.c | 1 +
drivers/perf/arm_dmc620_pmu.c | 1 +
drivers/perf/arm_dsu_pmu.c | 1 +
drivers/perf/arm_pmu_platform.c | 1 +
drivers/perf/arm_smmuv3_pmu.c | 1 +
drivers/perf/arm_spe_pmu.c | 1 +
drivers/perf/fsl_imx8_ddr_perf.c | 1 +
drivers/perf/hisilicon/hisi_pcie_pmu.c | 1 +
drivers/perf/hisilicon/hisi_uncore_pmu.c | 1 +
drivers/perf/hisilicon/hns3_pmu.c | 1 +
drivers/perf/qcom_l2_pmu.c | 1 +
drivers/perf/qcom_l3_pmu.c | 1 +
drivers/perf/riscv_pmu_legacy.c | 1 +
drivers/perf/riscv_pmu_sbi.c | 1 +
drivers/perf/thunderx2_pmu.c | 1 +
drivers/perf/xgene_pmu.c | 1 +
35 files changed, 43 insertions(+), 18 deletions(-)
rename Documentation/ABI/testing/{sysfs-devices-hisi_ptt => sysfs-bus-event_source-devices-hisi_ptt} (90%)

--
2.39.2