|
@@ -1193,6 +1193,7 @@ rb_remove_pages(struct ring_buffer_per_cpu *cpu_buffer, unsigned nr_pages)
|
|
|
atomic_inc(&cpu_buffer->record_disabled);
|
|
|
synchronize_sched();
|
|
|
|
|
|
+ spin_lock_irq(&cpu_buffer->reader_lock);
|
|
|
rb_head_page_deactivate(cpu_buffer);
|
|
|
|
|
|
for (i = 0; i < nr_pages; i++) {
|
|
@@ -1207,6 +1208,7 @@ rb_remove_pages(struct ring_buffer_per_cpu *cpu_buffer, unsigned nr_pages)
|
|
|
return;
|
|
|
|
|
|
rb_reset_cpu(cpu_buffer);
|
|
|
+ spin_unlock_irq(&cpu_buffer->reader_lock);
|
|
|
|
|
|
rb_check_pages(cpu_buffer);
|
|
|
|