mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-11 05:32:13 -04:00
sparc64: Rework sparc_pmu_enable() so that the side effects are clearer.
When cpuc->n_events is zero, we actually don't do anything and we just write the cpuc->pcr[0] value as-is without any modifications. The "pcr = 0;" assignment there was just useless and confusing. Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
@@ -752,7 +752,6 @@ static u64 maybe_change_configuration(struct cpu_hw_events *cpuc, u64 pcr)
|
||||
static void sparc_pmu_enable(struct pmu *pmu)
|
||||
{
|
||||
struct cpu_hw_events *cpuc = &__get_cpu_var(cpu_hw_events);
|
||||
u64 pcr;
|
||||
|
||||
if (cpuc->enabled)
|
||||
return;
|
||||
@@ -760,11 +759,8 @@ static void sparc_pmu_enable(struct pmu *pmu)
|
||||
cpuc->enabled = 1;
|
||||
barrier();
|
||||
|
||||
pcr = cpuc->pcr[0];
|
||||
if (!cpuc->n_events) {
|
||||
pcr = 0;
|
||||
} else {
|
||||
pcr = maybe_change_configuration(cpuc, pcr);
|
||||
if (cpuc->n_events) {
|
||||
u64 pcr = maybe_change_configuration(cpuc, cpuc->pcr[0]);
|
||||
|
||||
/* We require that all of the events have the same
|
||||
* configuration, so just fetch the settings from the
|
||||
|
||||
Reference in New Issue
Block a user