diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c index d390fea3a6a5..1c6babe5088f 100644 --- a/kernel/trace/trace.c +++ b/kernel/trace/trace.c @@ -8383,7 +8383,7 @@ tracing_buffers_read(struct file *filp, char __user *ubuf, trace_access_unlock(iter->cpu_file); if (ret < 0) { - if (trace_empty(iter)) { + if (trace_empty(iter) && !iter->closed) { if ((filp->f_flags & O_NONBLOCK)) return -EAGAIN;