diff options
author | Peter Zijlstra <a.p.zijlstra@chello.nl> | 2009-06-02 10:16:02 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-06-02 15:45:32 -0400 |
commit | 8e3747c13c39246c7e46def7cf495d9d21d4c5f9 (patch) | |
tree | 6a57736dd784947dbd40b75674effcb63e6696a1 /include | |
parent | e4abb5d4f7ddabc1fc7c392cf0a10d8e5868c9ca (diff) |
perf_counter: Change data head from u32 to u64
Since some people worried that 4G might not be a large enough
as an mmap data window, extend it to 64 bit for capable
platforms.
Reported-by: Stephane Eranian <eranian@googlemail.com>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
LKML-Reference: <new-submission>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/perf_counter.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/include/linux/perf_counter.h b/include/linux/perf_counter.h index cef9931793fd..c046f7d97cfa 100644 --- a/include/linux/perf_counter.h +++ b/include/linux/perf_counter.h | |||
@@ -212,7 +212,7 @@ struct perf_counter_mmap_page { | |||
212 | * User-space reading this value should issue an rmb(), on SMP capable | 212 | * User-space reading this value should issue an rmb(), on SMP capable |
213 | * platforms, after reading this value -- see perf_counter_wakeup(). | 213 | * platforms, after reading this value -- see perf_counter_wakeup(). |
214 | */ | 214 | */ |
215 | __u32 data_head; /* head in the data section */ | 215 | __u64 data_head; /* head in the data section */ |
216 | }; | 216 | }; |
217 | 217 | ||
218 | #define PERF_EVENT_MISC_CPUMODE_MASK (3 << 0) | 218 | #define PERF_EVENT_MISC_CPUMODE_MASK (3 << 0) |
@@ -397,10 +397,11 @@ struct perf_mmap_data { | |||
397 | int nr_locked; /* nr pages mlocked */ | 397 | int nr_locked; /* nr pages mlocked */ |
398 | 398 | ||
399 | atomic_t poll; /* POLL_ for wakeups */ | 399 | atomic_t poll; /* POLL_ for wakeups */ |
400 | atomic_t head; /* write position */ | ||
401 | atomic_t events; /* event limit */ | 400 | atomic_t events; /* event limit */ |
402 | 401 | ||
403 | atomic_t done_head; /* completed head */ | 402 | atomic_long_t head; /* write position */ |
403 | atomic_long_t done_head; /* completed head */ | ||
404 | |||
404 | atomic_t lock; /* concurrent writes */ | 405 | atomic_t lock; /* concurrent writes */ |
405 | 406 | ||
406 | atomic_t wakeup; /* needs a wakeup */ | 407 | atomic_t wakeup; /* needs a wakeup */ |