aboutsummaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
authorVaibhav Nagarnaik <vnagarnaik@google.com>2012-06-29 15:31:41 -0400
committerSteven Rostedt <rostedt@goodmis.org>2012-06-29 16:17:17 -0400
commit48fdc72f23ad9a9956e524a47843135d0bbc3317 (patch)
treebaaec367ed2c155d35c76b6d79b7bf1eb9092af7 /kernel
parent44b99462d9d776522e174d6c531ce5ccef309e26 (diff)
ring-buffer: Fix accounting of entries when removing pages
When removing pages from the ring buffer, its state is not reset. This means that the counters need to be correctly updated to account for the pages removed. Update the overrun counter to reflect the removed events from the pages. Link: http://lkml.kernel.org/r/1340998301-1715-1-git-send-email-vnagarnaik@google.com Cc: Justin Teravest <teravest@google.com> Cc: David Sharp <dhsharp@google.com> Signed-off-by: Vaibhav Nagarnaik <vnagarnaik@google.com> Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'kernel')
-rw-r--r--kernel/trace/ring_buffer.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/kernel/trace/ring_buffer.c b/kernel/trace/ring_buffer.c
index ba39cbabdc9f..f765465bffe4 100644
--- a/kernel/trace/ring_buffer.c
+++ b/kernel/trace/ring_buffer.c
@@ -1347,10 +1347,9 @@ rb_remove_pages(struct ring_buffer_per_cpu *cpu_buffer, unsigned int nr_pages)
1347 * If something was added to this page, it was full 1347 * If something was added to this page, it was full
1348 * since it is not the tail page. So we deduct the 1348 * since it is not the tail page. So we deduct the
1349 * bytes consumed in ring buffer from here. 1349 * bytes consumed in ring buffer from here.
1350 * No need to update overruns, since this page is 1350 * Increment overrun to account for the lost events.
1351 * deleted from ring buffer and its entries are
1352 * already accounted for.
1353 */ 1351 */
1352 local_add(page_entries, &cpu_buffer->overrun);
1354 local_sub(BUF_PAGE_SIZE, &cpu_buffer->entries_bytes); 1353 local_sub(BUF_PAGE_SIZE, &cpu_buffer->entries_bytes);
1355 } 1354 }
1356 1355