mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-20 05:31:15 +00:00
workqueue: flush_delayed_work: keep the original workqueue for re-queueing
flush_delayed_work() always uses keventd_wq for re-queueing, but it should use the workqueue this dwork was queued on. Signed-off-by: Oleg Nesterov <oleg@redhat.com> Signed-off-by: Tejun Heo <tj@kernel.org>
This commit is contained in:
parent
66f41d4c5c
commit
47dd5be2d6
1 changed files with 1 additions and 1 deletions
|
@ -774,7 +774,7 @@ void flush_delayed_work(struct delayed_work *dwork)
|
|||
{
|
||||
if (del_timer_sync(&dwork->timer)) {
|
||||
struct cpu_workqueue_struct *cwq;
|
||||
cwq = wq_per_cpu(keventd_wq, get_cpu());
|
||||
cwq = wq_per_cpu(get_wq_data(&dwork->work)->wq, get_cpu());
|
||||
__queue_work(cwq, &dwork->work);
|
||||
put_cpu();
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue