diff --git a/kernel/trace/ring_buffer.c b/kernel/trace/ring_buffer.c index 9c03a555a6ba..98130182e05d 100644 --- a/kernel/trace/ring_buffer.c +++ b/kernel/trace/ring_buffer.c @@ -7995,8 +7995,10 @@ int ring_buffer_map_get_reader(struct trace_buffer *buffer, int cpu) goto out; reader = rb_get_reader_page(cpu_buffer); - if (WARN_ON(!reader)) + if (!reader) { + WARN_ON(cpu_buffer->reader_page != cpu_buffer->commit_page); goto out; + } /* Check if any events were dropped */ missed_events = cpu_buffer->lost_events;