On Thu, Feb 20, 2014 at 03:44:31PM -0500, Tejun Heo wrote:
> Peter Hurley noticed that since a2c1c57be8d9 ("workqueue: consider
> work function when searching for busy work items"), a work item which
> gets assigned a different work function would break out of the
> non-reentrancy guarantee as workqueue would consider it a different
> work item.
>
> This is fragile and extremely subtle. PREPARE_[DELAYED_]WORK() have
> never been used widely and its semantics has always been somewhat
> iffy. If the work item is known not to be on queue when
> PREPARE_WORK() is called, there's no difference from using
> INIT_WORK(). If the work item may be queued at the time of
> PREPARE_WORK(), we can't really tell whether the old or new function
> will be executed the next time.
>
> We really don't want this level of subtlety in workqueue interface for
> such marginal use cases. The previous patches converted all existing
> users away from PREPARE_[DELAYED_]WORK(). Let's remove them.
>
> Signed-off-by: Tejun Heo <[email protected]>
> Cc: Peter Hurley <[email protected]>
> Link:
> http://lkml.kernel.org/g/[email protected]
Applied to wq/for-3.15.
Thanks.
--
tejun
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/