perf_counter: call atomic64_set for counter->count
authorPaul Mackerras <paulus@samba.org>
Mon, 11 May 2009 05:50:21 +0000 (15:50 +1000)
committerIngo Molnar <mingo@elte.hu>
Mon, 11 May 2009 10:10:54 +0000 (12:10 +0200)
A compile warning triggered because we are calling
atomic_set(&counter->count). But since counter->count
is an atomic64_t, we have to use atomic64_set.

So the count can be set short, resulting in the reset ioctl
only resetting the low word.

[ Impact: clear counter properly during the reset ioctl ]

Signed-off-by: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com>
LKML-Reference: <18951.48285.270311.981806@drongo.ozlabs.ibm.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
kernel/perf_counter.c

index 7373b96..5ea0240 100644 (file)
@@ -1281,7 +1281,7 @@ static unsigned int perf_poll(struct file *file, poll_table *wait)
 static void perf_counter_reset(struct perf_counter *counter)
 {
        (void)perf_counter_read(counter);
-       atomic_set(&counter->count, 0);
+       atomic64_set(&counter->count, 0);
        perf_counter_update_userpage(counter);
 }