Loading arch/arm64/kernel/perf_event.c +3 −0 Original line number Diff line number Diff line Loading @@ -590,6 +590,9 @@ static void armv8pmu_idle_update(struct arm_pmu *cpu_pmu) hw_events = this_cpu_ptr(cpu_pmu->hw_events); if (!hw_events) return; for (idx = 0; idx < cpu_pmu->num_events; ++idx) { if (!test_bit(idx, hw_events->used_mask)) Loading drivers/perf/arm_pmu.c +5 −5 Original line number Diff line number Diff line Loading @@ -1051,6 +1051,10 @@ int arm_pmu_device_probe(struct platform_device *pdev, pmu->plat_device = pdev; ret = cpu_pmu_init(pmu); if (ret) goto out_free; if (node && (of_id = of_match_node(of_table, pdev->dev.of_node))) { init_fn = of_id->data; Loading @@ -1073,13 +1077,9 @@ int arm_pmu_device_probe(struct platform_device *pdev, if (ret) { pr_info("%s: failed to probe PMU!\n", of_node_full_name(node)); goto out_free; goto out_destroy; } ret = cpu_pmu_init(pmu); if (ret) goto out_free; ret = perf_pmu_register(&pmu->pmu, pmu->name, -1); if (ret) goto out_destroy; Loading Loading
arch/arm64/kernel/perf_event.c +3 −0 Original line number Diff line number Diff line Loading @@ -590,6 +590,9 @@ static void armv8pmu_idle_update(struct arm_pmu *cpu_pmu) hw_events = this_cpu_ptr(cpu_pmu->hw_events); if (!hw_events) return; for (idx = 0; idx < cpu_pmu->num_events; ++idx) { if (!test_bit(idx, hw_events->used_mask)) Loading
drivers/perf/arm_pmu.c +5 −5 Original line number Diff line number Diff line Loading @@ -1051,6 +1051,10 @@ int arm_pmu_device_probe(struct platform_device *pdev, pmu->plat_device = pdev; ret = cpu_pmu_init(pmu); if (ret) goto out_free; if (node && (of_id = of_match_node(of_table, pdev->dev.of_node))) { init_fn = of_id->data; Loading @@ -1073,13 +1077,9 @@ int arm_pmu_device_probe(struct platform_device *pdev, if (ret) { pr_info("%s: failed to probe PMU!\n", of_node_full_name(node)); goto out_free; goto out_destroy; } ret = cpu_pmu_init(pmu); if (ret) goto out_free; ret = perf_pmu_register(&pmu->pmu, pmu->name, -1); if (ret) goto out_destroy; Loading