aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/workqueue.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/workqueue.c')
-rw-r--r--kernel/workqueue.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/kernel/workqueue.c b/kernel/workqueue.c
index ee41cf857d55..5fbffd302eb5 100644
--- a/kernel/workqueue.c
+++ b/kernel/workqueue.c
@@ -690,7 +690,8 @@ int schedule_on_each_cpu(work_func_t func)
690 set_bit(WORK_STRUCT_PENDING, work_data_bits(work)); 690 set_bit(WORK_STRUCT_PENDING, work_data_bits(work));
691 __queue_work(per_cpu_ptr(keventd_wq->cpu_wq, cpu), work); 691 __queue_work(per_cpu_ptr(keventd_wq->cpu_wq, cpu), work);
692 } 692 }
693 flush_workqueue(keventd_wq); 693 for_each_online_cpu(cpu)
694 flush_work(per_cpu_ptr(works, cpu));
694 put_online_cpus(); 695 put_online_cpus();
695 free_percpu(works); 696 free_percpu(works);
696 return 0; 697 return 0;