drain_workqueue - drain a workqueue
void drain_workqueue(struct workqueue_struct * wq);
Wait until the workqueue becomes empty. While draining is in progress, only chain queueing is allowed. IOW, only currently pending or running work items on wq can queue further work items on it. wq is flushed repeatedly until it becomes empty. The number of flushing is determined by the depth of chaining and should be relatively short. Whine if it takes too long.
|January 2017||Kernel Hackers Manual 4.8.|