diff options
-rw-r--r-- | arch/powerpc/perf/core-fsl-emb.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/powerpc/perf/core-fsl-emb.c b/arch/powerpc/perf/core-fsl-emb.c index e9fe904b6538..5d747b4cb8ee 100644 --- a/arch/powerpc/perf/core-fsl-emb.c +++ b/arch/powerpc/perf/core-fsl-emb.c | |||
@@ -330,9 +330,11 @@ static int fsl_emb_pmu_add(struct perf_event *event, int flags) | |||
330 | } | 330 | } |
331 | local64_set(&event->hw.prev_count, val); | 331 | local64_set(&event->hw.prev_count, val); |
332 | 332 | ||
333 | if (!(flags & PERF_EF_START)) { | 333 | if (unlikely(!(flags & PERF_EF_START))) { |
334 | event->hw.state = PERF_HES_STOPPED | PERF_HES_UPTODATE; | 334 | event->hw.state = PERF_HES_STOPPED | PERF_HES_UPTODATE; |
335 | val = 0; | 335 | val = 0; |
336 | } else { | ||
337 | event->hw.state &= ~(PERF_HES_STOPPED | PERF_HES_UPTODATE); | ||
336 | } | 338 | } |
337 | 339 | ||
338 | write_pmc(i, val); | 340 | write_pmc(i, val); |