> Assuming that we should not check all CPUs. And in this case perhaps we can
> even do something like
> 
>       if (!delayed_work_pending() &&
>           get_wq_data()->current_work != dwork)
>               return;
> 
> but this needs barriers, and run_workqueue() needs mb__before_clear_bit().

Linus correctly said that we got into the mess because the locking was
too clever before. At this point the mutex approach seems to be rather
preferable to the other approaches which are at least as "clever" as the
current locking
--
To unsubscribe from this list: send the line "unsubscribe kernel-testers" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to