[21/32] perf/arm-cmn: Assign parents for event_source device

Message ID 20230404134225.13408-22-Jonathan.Cameron@huawei.com
State New
Headers
Series Add parents to struct pmu -> dev |

Commit Message

Jonathan Cameron April 4, 2023, 1:42 p.m. UTC
  Currently the PMU device appears directly under /sys/devices/
Only root busses should appear there, so instead assign the pmu->dev
parent to be the platform device.

Link: https://lore.kernel.org/linux-cxl/ZCLI9A40PJsyqAmq@kroah.com/
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
---
 drivers/perf/arm-cmn.c | 1 +
 1 file changed, 1 insertion(+)
  

Comments

Robin Murphy April 12, 2023, 11:52 a.m. UTC | #1
On 2023-04-04 14:42, Jonathan Cameron wrote:
> Currently the PMU device appears directly under /sys/devices/
> Only root busses should appear there, so instead assign the pmu->dev
> parent to be the platform device.

Oh, fab! Just the other week I wrote up a patch doing this after the 
fact with device_move() on the grounds of making the PMU instances 
easier to identify (and with an equivalent cleanup of 
Documentation/admin-guide/perf), which I was close to getting round to 
sending as an RFC. Thus I thoroughly approve :D

Acked-by: Robin Murphy <robin.murphy@arm.com>

> Link: https://lore.kernel.org/linux-cxl/ZCLI9A40PJsyqAmq@kroah.com/
> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
> ---
>   drivers/perf/arm-cmn.c | 1 +
>   1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/perf/arm-cmn.c b/drivers/perf/arm-cmn.c
> index c9689861be3f..7731eb0e2a4a 100644
> --- a/drivers/perf/arm-cmn.c
> +++ b/drivers/perf/arm-cmn.c
> @@ -2284,6 +2284,7 @@ static int arm_cmn_probe(struct platform_device *pdev)
>   	cmn->cpu = cpumask_local_spread(0, dev_to_node(cmn->dev));
>   	cmn->pmu = (struct pmu) {
>   		.module = THIS_MODULE,
> +		.parent = &pdev->dev,
>   		.attr_groups = arm_cmn_attr_groups,
>   		.capabilities = PERF_PMU_CAP_NO_EXCLUDE,
>   		.task_ctx_nr = perf_invalid_context,
  

Patch

diff --git a/drivers/perf/arm-cmn.c b/drivers/perf/arm-cmn.c
index c9689861be3f..7731eb0e2a4a 100644
--- a/drivers/perf/arm-cmn.c
+++ b/drivers/perf/arm-cmn.c
@@ -2284,6 +2284,7 @@  static int arm_cmn_probe(struct platform_device *pdev)
 	cmn->cpu = cpumask_local_spread(0, dev_to_node(cmn->dev));
 	cmn->pmu = (struct pmu) {
 		.module = THIS_MODULE,
+		.parent = &pdev->dev,
 		.attr_groups = arm_cmn_attr_groups,
 		.capabilities = PERF_PMU_CAP_NO_EXCLUDE,
 		.task_ctx_nr = perf_invalid_context,