Re: [PATCH 8/8] fs/aio: Use rcu_work instead of explicit rcu and work item

From: Tejun Heo
Date: Tue Mar 27 2018 - 11:55:21 EST


Hey,

On Tue, Mar 27, 2018 at 04:28:48PM +0200, Oleg Nesterov wrote:
> > flush_*work() guarantees to wait for the completion of the latest
> > instance of the work item which was visible to the caller. We can't
> > guarantee that w/o rcu_barrier().
>
> And this is what I can't understand.
>
> So let me repeat. Could you please describe a use-case which needs flush_rcuwork()
> with rcu_barrier() ?

So, if you skip that, flush_work() in itself won't wait for PENDING
bit at all. It'll return right away if the work item is waiting for
rcu grace period.

Thanks.

--
tejun