powerpc/perf: Don't enable if we have zero events
In power_pmu_enable() we still enable the PMU even if we have zero events. This should have no effect but doesn't make much sense. Instead just return after telling the hypervisor that we are not using the PMCs. Signed-off-by: Michael Ellerman <michael@ellerman.id.au> CC: <stable@vger.kernel.org> [v3.10] Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
This commit is contained in:
parent
0a48843d6c
commit
4ea355b536
1 changed files with 5 additions and 2 deletions
|
@ -926,6 +926,11 @@ static void power_pmu_enable(struct pmu *pmu)
|
|||
if (!cpuhw->disabled)
|
||||
goto out;
|
||||
|
||||
if (cpuhw->n_events == 0) {
|
||||
ppc_set_pmu_inuse(0);
|
||||
goto out;
|
||||
}
|
||||
|
||||
cpuhw->disabled = 0;
|
||||
|
||||
/*
|
||||
|
@ -937,8 +942,6 @@ static void power_pmu_enable(struct pmu *pmu)
|
|||
if (!cpuhw->n_added) {
|
||||
mtspr(SPRN_MMCRA, cpuhw->mmcr[2] & ~MMCRA_SAMPLE_ENABLE);
|
||||
mtspr(SPRN_MMCR1, cpuhw->mmcr[1]);
|
||||
if (cpuhw->n_events == 0)
|
||||
ppc_set_pmu_inuse(0);
|
||||
goto out_enable;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue