USB_NUM_TASKQS
static struct usb_taskq usb_taskq[USB_NUM_TASKQS];
for (i = 0; i < USB_NUM_TASKQS; i++) {
KASSERT(queue < USB_NUM_TASKQS);
if (atomic_cas_uint(&task->queue, USB_NUM_TASKQS, queue) ==
USB_NUM_TASKQS) {
while ((queue = task->queue) != USB_NUM_TASKQS) {
task->queue = USB_NUM_TASKQS;
KASSERT(queue < USB_NUM_TASKQS);
if (queue1 == USB_NUM_TASKQS) {
task->queue = USB_NUM_TASKQS;
return task->queue != USB_NUM_TASKQS;
task->queue = USB_NUM_TASKQS;
#define usb_init_task(t, f, a, fl) ((t)->fun = (f), (t)->arg = (a), (t)->queue = USB_NUM_TASKQS, (t)->flags = (fl))