Lines Matching refs:task

175 SDT_PROBE_DEFINE3(usb, kernel, task, add,
177 SDT_PROBE_DEFINE2(usb, kernel, task, rem__start,
179 SDT_PROBE_DEFINE3(usb, kernel, task, rem__done,
183 SDT_PROBE_DEFINE4(usb, kernel, task, rem__wait__start,
188 SDT_PROBE_DEFINE5(usb, kernel, task, rem__wait__done,
195 SDT_PROBE_DEFINE1(usb, kernel, task, start, "struct usb_task *"/*task*/);
196 SDT_PROBE_DEFINE1(usb, kernel, task, done, "struct usb_task *"/*task*/);
565 usb_add_task(struct usbd_device *dev, struct usb_task *task, int queue) in usb_add_task() argument
570 SDT_PROBE3(usb, kernel, task, add, dev, task, queue); in usb_add_task()
576 if (atomic_cas_uint(&task->queue, USB_NUM_TASKQS, queue) == in usb_add_task()
578 DPRINTFN(2, "task=%#jx", (uintptr_t)task, 0, 0, 0); in usb_add_task()
579 TAILQ_INSERT_TAIL(&taskq->tasks, task, next); in usb_add_task()
582 DPRINTFN(2, "task=%#jx on q", (uintptr_t)task, 0, 0, 0); in usb_add_task()
600 usb_rem_task(struct usbd_device *dev, struct usb_task *task) in usb_rem_task() argument
605 SDT_PROBE2(usb, kernel, task, rem__start, dev, task); in usb_rem_task()
607 while ((queue = task->queue) != USB_NUM_TASKQS) { in usb_rem_task()
610 if (__predict_true(task->queue == queue)) { in usb_rem_task()
611 TAILQ_REMOVE(&taskq->tasks, task, next); in usb_rem_task()
612 task->queue = USB_NUM_TASKQS; in usb_rem_task()
614 SDT_PROBE3(usb, kernel, task, rem__done, in usb_rem_task()
615 dev, task, true); in usb_rem_task()
621 SDT_PROBE3(usb, kernel, task, rem__done, dev, task, false); in usb_rem_task()
644 usb_rem_task_wait(struct usbd_device *dev, struct usb_task *task, int queue, in usb_rem_task_wait() argument
652 SDT_PROBE4(usb, kernel, task, rem__wait__start, in usb_rem_task_wait()
653 dev, task, queue, interlock); in usb_rem_task_wait()
660 queue1 = task->queue; in usb_rem_task_wait()
669 while (taskq->current_task == task) in usb_rem_task_wait()
678 task, queue1, queue); in usb_rem_task_wait()
679 TAILQ_REMOVE(&taskq->tasks, task, next); in usb_rem_task_wait()
680 task->queue = USB_NUM_TASKQS; in usb_rem_task_wait()
692 SDT_PROBE5(usb, kernel, task, rem__wait__done, in usb_rem_task_wait()
693 dev, task, queue, interlock, removed); in usb_rem_task_wait()
708 usb_task_pending(struct usbd_device *dev, struct usb_task *task) in usb_task_pending() argument
711 return task->queue != USB_NUM_TASKQS; in usb_task_pending()
773 struct usb_task *task; in usb_task_thread() local
785 task = TAILQ_FIRST(&taskq->tasks); in usb_task_thread()
786 if (task == NULL) { in usb_task_thread()
788 task = TAILQ_FIRST(&taskq->tasks); in usb_task_thread()
790 DPRINTFN(2, "woke up task=%#jx", (uintptr_t)task, 0, 0, 0); in usb_task_thread()
791 if (task != NULL) { in usb_task_thread()
792 mpsafe = ISSET(task->flags, USB_TASKQ_MPSAFE); in usb_task_thread()
793 TAILQ_REMOVE(&taskq->tasks, task, next); in usb_task_thread()
794 task->queue = USB_NUM_TASKQS; in usb_task_thread()
795 taskq->current_task = task; in usb_task_thread()
800 SDT_PROBE1(usb, kernel, task, start, task); in usb_task_thread()
801 task->fun(task->arg); in usb_task_thread()
803 SDT_PROBE1(usb, kernel, task, done, task); in usb_task_thread()
808 KASSERTMSG(taskq->current_task == task, in usb_task_thread()