--- x/kernel/trace/ring_buffer.c +++ y/kernel/trace/ring_buffer.c @@ -6909,7 +6909,6 @@ error: buffer->subbuf_size = old_size; atomic_dec(&buffer->record_disabled); - mutex_unlock(&buffer->mutex); for_each_buffer_cpu(buffer, cpu) { cpu_buffer = buffer->buffers[cpu]; @@ -6922,6 +6921,7 @@ error: free_buffer_page(bpage); } } + mutex_unlock(&buffer->mutex); return err; }