Re: [RFC PATCH] tracing: Introduce pipe_cpumask to avoid race on trace_pipes

From: Steven Rostedt
Date: Thu Aug 17 2023 - 21:44:33 EST


On Fri, 18 Aug 2023 09:38:27 +0800
Zheng Yejian <zhengyejian1@xxxxxxxxxx> wrote:

> >> from being opened by multiple people at the same time.
> >
> > I'm fine with the CPU mask.
>
> Hi, Steve, if a task open a trace_pipe file, then concurrently read it
> with multiple threads, then the read race problem may also happen, this
> patch will not prevent this case.

I was thinking this too and started to look at a fix for that when I
realized, it shouldn't be a problem. The open creates the iterator and it's
attached to the file descriptor. All the threads will be using the same
file descriptor, which means they will be using the same iterator. That
iter->ent from one thread will be still valid for the next thread.

-- Steve


>
> Do we need to consider this case? Or just tell user not to do like this
> through some documents?