Browse Source

ring-buffer: check for failed allocation in ring buffer benchmark

The result of the allocation of the ring buffer read page in the
ring buffer bench mark does not check the return to see if a page
was actually allocated. This patch fixes that.

[ Impact: avoid NULL dereference ]

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Steven Rostedt 16 years ago
parent
commit
00c81a58c5
1 changed files with 3 additions and 0 deletions
  1. 3 0
      kernel/trace/ring_buffer_benchmark.c

+ 3 - 0
kernel/trace/ring_buffer_benchmark.c

@@ -84,6 +84,9 @@ static enum event_status read_page(int cpu)
 	int i;
 	int i;
 
 
 	bpage = ring_buffer_alloc_read_page(buffer);
 	bpage = ring_buffer_alloc_read_page(buffer);
+	if (!bpage)
+		return EVENT_DROPPED;
+
 	ret = ring_buffer_read_page(buffer, &bpage, PAGE_SIZE, cpu, 1);
 	ret = ring_buffer_read_page(buffer, &bpage, PAGE_SIZE, cpu, 1);
 	if (ret >= 0) {
 	if (ret >= 0) {
 		rpage = bpage;
 		rpage = bpage;