Re: [PATCH 7/7] RCU, workqueue: Implement rcu_work

From: Tejun Heo
Date: Fri Mar 09 2018 - 11:22:03 EST


Hello,

On Thu, Mar 08, 2018 at 08:29:53AM +0800, Lai Jiangshan wrote:
> I mentioned a subtle use case that user would think it is supported
> since the comment doesn't disallow it.
>
> It is clear that the user expects
> the work must be called at least once after the API returns
> the work must be called after an RCU grace period
>
> But in the case when the user expects the work must be called
> at least once again after "queue_rcu_work() + an RCU grace period",
> the API is not competent to it if the work is queued.
> Although the user can detect it by the return value of
> queue_rcu_work(), the user hardly makes his expectation
> happen by adding appropriate code.

We should definitely document it better but it isn't any different
from delayed_work, and I don't see a reason to deviate.

Thanks.

--
tejun