ring-buffer: check for failed allocation in ring buffer benchmark
authorSteven Rostedt <srostedt@redhat.com>
Wed, 6 May 2009 16:40:51 +0000 (12:40 -0400)
committerSteven Rostedt <rostedt@goodmis.org>
Wed, 6 May 2009 16:49:20 +0000 (12:49 -0400)
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>
kernel/trace/ring_buffer_benchmark.c

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