Lines Matching refs:wq
34 __queue_work(struct workqueue_struct *wq, struct work_struct *work)
38 ASSERT(wq->taskq != NULL);
45 if ((ret = ddi_taskq_dispatch(wq->taskq, work->func, work, DDI_SLEEP))
60 struct workqueue_struct *wq;
62 wq = kmem_zalloc(sizeof (struct workqueue_struct), KM_SLEEP);
63 wq->taskq = ddi_taskq_create(dip, name, 1, TASKQ_DEFAULTPRI, 0);
64 if (wq->taskq == NULL)
66 wq->name = name;
68 return wq;
71 kmem_free(wq, sizeof (struct workqueue_struct));
76 destroy_workqueue(struct workqueue_struct *wq)
78 if (wq) {
79 ddi_taskq_destroy(wq->taskq);
80 kmem_free(wq, sizeof (struct workqueue_struct));
85 cancel_delayed_work(struct workqueue_struct *wq)
87 ddi_taskq_wait(wq->taskq);
90 flush_workqueue(struct workqueue_struct *wq)
92 ddi_taskq_wait(wq->taskq);