mbox series

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

Message ID 20240412161057.14099-1-Jonathan.Cameron@huawei.com (mailing list archive)
Headers show
Series Add parents to struct pmu -> dev | expand

Message

Jonathan Cameron April 12, 2024, 4:10 p.m. UTC
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%)

Comments

Will Deacon April 19, 2024, 3:33 p.m. UTC | #1
On Fri, 12 Apr 2024 17:10:27 +0100, Jonathan Cameron wrote:
> 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.
> 
> [...]

Applied drivers/perf parts to will (for-next/perf), thanks!

[01/30] perf/hisi-pcie: Assign parent for event_source device
        https://git.kernel.org/will/c/1fb8950417a4
[02/30] Documentation: hisi-pmu: Drop reference to /sys/devices path
        https://git.kernel.org/will/c/d0412b6ecb4e
[03/30] perf/hisi-uncore: Assign parents for event_source devices
        https://git.kernel.org/will/c/16d417f6c45b
[04/30] Documentation: hns-pmu: Use /sys/bus/event_source/devices paths
        https://git.kernel.org/will/c/eff6af531335
[05/30] perf/hisi-hns3: Assign parents for event_source device
        https://git.kernel.org/will/c/3d957de12c65
[06/30] perf/amlogic: Assign parents for event_source devices
        https://git.kernel.org/will/c/1b7718fcc3f2
[07/30] perf/arm_cspmu: Assign parents for event_source devices
        https://git.kernel.org/will/c/3a1bb75ebc1b
[08/30] Documentation: xgene-pmu: Use /sys/bus/event_source/devices paths
        https://git.kernel.org/will/c/867ba6d204f1
[09/30] perf/xgene: Assign parents for event_source devices
        https://git.kernel.org/will/c/89e34f8bee6c
[10/30] Documentation: thunderx2-pmu: Use /sys/bus/event_source/devices paths
        https://git.kernel.org/will/c/90b4a1a927ee
[11/30] perf/thunderx2: Assign parents for event_source devices
        https://git.kernel.org/will/c/ecb79c21c189
[12/30] perf/riscv: Assign parents for event_source devices
        https://git.kernel.org/will/c/50650e5f3186
[13/30] Documentation: qcom-pmu: Use /sys/bus/event_source/devices paths
        https://git.kernel.org/will/c/556da1343452
[14/30] perf/qcom: Assign parents for event_source devices
        https://git.kernel.org/will/c/6148865dd57c
[15/30] perf/imx_ddr: Assign parents for event_source devices
        https://git.kernel.org/will/c/1d194ab8571b
[16/30] perf/arm_pmu: Assign parents for event_source devices
        https://git.kernel.org/will/c/7bf75431a9ba
[17/30] perf/alibaba_uncore: Assign parents for event_source device
        https://git.kernel.org/will/c/1919bd8e0be0
[18/30] perf/arm-cci: Assign parents for event_source device
        https://git.kernel.org/will/c/e7ec4791f903
[19/30] perf/arm-ccn: Assign parents for event_source device
        https://git.kernel.org/will/c/f4144be05a60
[20/30] perf/arm-dmc620: Assign parents for event_source device
        https://git.kernel.org/will/c/46bed4c740d5
[21/30] perf/arm-dsu: Assign parents for event_source device
        https://git.kernel.org/will/c/bc81ae2efbb3
[22/30] perf/arm-smmuv3: Assign parents for event_source device
        https://git.kernel.org/will/c/a8889fbf16bc
[23/30] perf/arm-spe: Assign parents for event_source device
        https://git.kernel.org/will/c/4052ce07d5d7

Cheers,
Suzuki K Poulose May 2, 2024, 11:09 a.m. UTC | #2
On Fri, 12 Apr 2024 17:10:27 +0100, Jonathan Cameron wrote:
> 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.
> 
> [...]

Applied, subset of patches to coresight/next. thanks!

[29/30] Documentation: ABI + trace: hisi_ptt: update paths to bus/event_source
        https://git.kernel.org/coresight/c/1f82d58ddbe21ed75c04d04403d8268a95e0190a
[30/30] hwtracing: hisi_ptt: Assign parent for event_source device
        https://git.kernel.org/coresight/c/9b47d9982d1de5adf0abcb8f1a400e51d68cca1f

Best regards,