Browse Source

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>
David S. Miller 13 years ago
parent
commit
5ab9684135
1 changed files with 2 additions and 6 deletions
  1. 2 6
      arch/sparc/kernel/perf_event.c

+ 2 - 6
arch/sparc/kernel/perf_event.c

@@ -752,7 +752,6 @@ out:
 static void sparc_pmu_enable(struct pmu *pmu)
 static void sparc_pmu_enable(struct pmu *pmu)
 {
 {
 	struct cpu_hw_events *cpuc = &__get_cpu_var(cpu_hw_events);
 	struct cpu_hw_events *cpuc = &__get_cpu_var(cpu_hw_events);
-	u64 pcr;
 
 
 	if (cpuc->enabled)
 	if (cpuc->enabled)
 		return;
 		return;
@@ -760,11 +759,8 @@ static void sparc_pmu_enable(struct pmu *pmu)
 	cpuc->enabled = 1;
 	cpuc->enabled = 1;
 	barrier();
 	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
 		/* We require that all of the events have the same
 		 * configuration, so just fetch the settings from the
 		 * configuration, so just fetch the settings from the