aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/perf_event.h
diff options
context:
space:
mode:
authorPeter Zijlstra <a.p.zijlstra@chello.nl>2010-05-20 10:21:55 -0400
committerIngo Molnar <mingo@elte.hu>2010-05-21 05:37:58 -0400
commitadb8e118f288dc4c569ac9a89010b81a4745fbf0 (patch)
tree40f2bbbe7c59fb4b4a44120fa9cc79822b68e545 /include/linux/perf_event.h
parent0e2e63dd608bf5844ffae7bf7d860de18a62724c (diff)
perf: Fix wakeup storm for RO mmap()s
RO mmap()s don't update the tail pointer, so comparing against it for determining the written data size doesn't really do any good. Keep track of when we last did a wakeup, and compare against that. Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Arnaldo Carvalho de Melo <acme@redhat.com> Cc: Frederic Weisbecker <fweisbec@gmail.com> Cc: Paul Mackerras <paulus@samba.org> Cc: Mike Galbraith <efault@gmx.de> Cc: Steven Rostedt <rostedt@goodmis.org> LKML-Reference: <20100521090710.684479310@chello.nl> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'include/linux/perf_event.h')
-rw-r--r--include/linux/perf_event.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/perf_event.h b/include/linux/perf_event.h
index 7cd7b356447d..7098ebbb3b3a 100644
--- a/include/linux/perf_event.h
+++ b/include/linux/perf_event.h
@@ -599,7 +599,7 @@ struct perf_mmap_data {
599 local_t head; /* write position */ 599 local_t head; /* write position */
600 local_t nest; /* nested writers */ 600 local_t nest; /* nested writers */
601 local_t events; /* event limit */ 601 local_t events; /* event limit */
602 local_t wakeup; /* needs a wakeup */ 602 local_t wakeup; /* wakeup stamp */
603 local_t lost; /* nr records lost */ 603 local_t lost; /* nr records lost */
604 604
605 long watermark; /* wakeup watermark */ 605 long watermark; /* wakeup watermark */