* ib_wq is added, which is used as the common workqueue for infiniband
  instead of the system workqueue.  All system workqueue usages
  including flush_scheduled_work() callers are converted to use and
  flush ib_wq.

* cancel_delayed_work() + flush_scheduled_work() converted to
  cancel_delayed_work_sync().

* qib_wq is removed and ib_wq is used instead.

This is to prepare for deprecation of flush_scheduled_work().

Signed-off-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
Этот коммит содержится в:
Tejun Heo
2010-10-19 15:24:36 +00:00
коммит произвёл Roland Dreier
родитель 948579cd8c
Коммит f06267104d
13 изменённых файлов: 39 добавлений и 50 удалений

Просмотреть файл

@@ -755,7 +755,7 @@ static void __devexit ipath_remove_one(struct pci_dev *pdev)
*/
ipath_shutdown_device(dd);
flush_scheduled_work();
flush_workqueue(ib_wq);
if (dd->verbs_dev)
ipath_unregister_ib_device(dd->verbs_dev);

Просмотреть файл

@@ -220,7 +220,7 @@ void ipath_release_user_pages_on_close(struct page **p, size_t num_pages)
work->mm = mm;
work->num_pages = num_pages;
schedule_work(&work->work);
queue_work(ib_wq, &work->work);
return;
bail_mm: