ring-buffer: change WARN_ON from checking preempt_count to preemptible
authorSteven Rostedt <srostedt@redhat.com>
Thu, 7 May 2009 23:58:55 +0000 (19:58 -0400)
committerSteven Rostedt <rostedt@goodmis.org>
Fri, 8 May 2009 00:01:11 +0000 (20:01 -0400)
There's a WARN_ON in the ring buffer code that makes sure preemption
is disabled. It checks "!preempt_count()". But when CONFIG_PREEMPT is not
enabled, preempt_count() is always zero, and this will trigger the warning.

[ Impact: prevent false warning on non preemptible kernels ]

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
kernel/trace/ring_buffer.c

index 3ae5ccf..3611706 100644 (file)
@@ -1688,7 +1688,7 @@ void ring_buffer_discard_commit(struct ring_buffer *buffer,
         * committed yet. Thus we can assume that preemption
         * is still disabled.
         */
-       RB_WARN_ON(buffer, !preempt_count());
+       RB_WARN_ON(buffer, preemptible());
 
        cpu = smp_processor_id();
        cpu_buffer = buffer->buffers[cpu];