diff options
Diffstat (limited to 'kernel/perf_counter.c')
-rw-r--r-- | kernel/perf_counter.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/kernel/perf_counter.c b/kernel/perf_counter.c index f105a6e696c2..2a5d4f525567 100644 --- a/kernel/perf_counter.c +++ b/kernel/perf_counter.c | |||
@@ -1340,13 +1340,13 @@ void perf_counter_update_userpage(struct perf_counter *counter) | |||
1340 | */ | 1340 | */ |
1341 | preempt_disable(); | 1341 | preempt_disable(); |
1342 | ++userpg->lock; | 1342 | ++userpg->lock; |
1343 | smp_wmb(); | 1343 | barrier(); |
1344 | userpg->index = counter->hw.idx; | 1344 | userpg->index = counter->hw.idx; |
1345 | userpg->offset = atomic64_read(&counter->count); | 1345 | userpg->offset = atomic64_read(&counter->count); |
1346 | if (counter->state == PERF_COUNTER_STATE_ACTIVE) | 1346 | if (counter->state == PERF_COUNTER_STATE_ACTIVE) |
1347 | userpg->offset -= atomic64_read(&counter->hw.prev_count); | 1347 | userpg->offset -= atomic64_read(&counter->hw.prev_count); |
1348 | 1348 | ||
1349 | smp_wmb(); | 1349 | barrier(); |
1350 | ++userpg->lock; | 1350 | ++userpg->lock; |
1351 | preempt_enable(); | 1351 | preempt_enable(); |
1352 | unlock: | 1352 | unlock: |