diff options
author | Steven Rostedt (Red Hat) <rostedt@goodmis.org> | 2015-05-28 13:14:51 -0400 |
---|---|---|
committer | Steven Rostedt <rostedt@goodmis.org> | 2015-05-28 16:47:01 -0400 |
commit | 289a5a25c5d0949e4d9b9ca4f334b6af5a83e090 (patch) | |
tree | 52dfb5ac2a8c5fb63a2fa84212e50b423ea04c9b /include/linux/kernel.h | |
parent | 985e871b28fc3e73ccd21cb999ce61266dc8c941 (diff) | |
download | linux-stable-289a5a25c5d0949e4d9b9ca4f334b6af5a83e090.tar.gz linux-stable-289a5a25c5d0949e4d9b9ca4f334b6af5a83e090.tar.bz2 linux-stable-289a5a25c5d0949e4d9b9ca4f334b6af5a83e090.zip |
ring-buffer: Give NMIs a chance to lock the reader_lock
Currently, if an NMI does a dump of a ring buffer, it disables
all ring buffers from ever doing any writes again. This is because
it wont take the locks for the cpu_buffer and this can cause
corruption if it preempted a read, or a read happens on another
CPU for the current cpu buffer. This is a bit overkill.
First, it should at least try to take the lock, and if it fails
then disable it. Also, there's no need to disable all ring
buffers, even those that are unrelated to what is being read.
Only disable the per cpu ring buffer that is being read if
it can not get the lock for it.
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'include/linux/kernel.h')
0 files changed, 0 insertions, 0 deletions