• Steven Rostedt's avatar
    ring-buffer: add counters for commit overrun and nmi dropped entries · f0d2c681
    Steven Rostedt authored
    The WARN_ON in the ring buffer when a commit is preempted and the
    buffer is filled by preceding writes can happen in normal operations.
    The WARN_ON makes it look like a bug, not to mention, because
    it does not stop tracing and calls printk which can also recurse, this
    is prone to deadlock (the WARN_ON is not in a position to recurse).
    
    This patch removes the WARN_ON and replaces it with a counter that
    can be retrieved by a tracer. This counter is called commit_overrun.
    
    While at it, I added a nmi_dropped counter to count any time an NMI entry
    is dropped because the NMI could not take the spinlock.
    
    [ Impact: prevent deadlock by printing normal case warning ]
    Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
    f0d2c681
ring_buffer.c 76.7 KB