Lines Matching refs:ret_worker
295 struct crypto_ret_worker *ret_worker; in crypto_init() local
333 FOREACH_CRYPTO_RETW(ret_worker) { in crypto_init()
334 TAILQ_INIT(&ret_worker->crp_ordered_ret_q); in crypto_init()
335 TAILQ_INIT(&ret_worker->crp_ret_q); in crypto_init()
337 ret_worker->reorder_ops = 0; in crypto_init()
338 ret_worker->reorder_cur_seq = 0; in crypto_init()
340 mtx_init(&ret_worker->crypto_ret_mtx, "crypto return queues", in crypto_init()
343 error = kthread_add(crypto_ret_thread, ret_worker, p, in crypto_init()
344 &ret_worker->td, 0, 0, "crypto returns %td", in crypto_init()
345 CRYPTO_RETW_ID(ret_worker)); in crypto_init()
432 struct crypto_ret_worker *ret_worker; in crypto_destroy() local
442 FOREACH_CRYPTO_RETW(ret_worker) in crypto_destroy()
443 crypto_terminate(&ret_worker->td, &ret_worker->crp_ret_q); in crypto_destroy()
460 FOREACH_CRYPTO_RETW(ret_worker) in crypto_destroy()
461 mtx_destroy(&ret_worker->crypto_ret_mtx); in crypto_destroy()
1445 struct crypto_ret_worker *ret_worker; in crypto_dispatch_async() local
1463 ret_worker = CRYPTO_RETW(crp->crp_retw_id); in crypto_dispatch_async()
1464 CRYPTO_RETW_LOCK(ret_worker); in crypto_dispatch_async()
1465 crp->crp_seq = ret_worker->reorder_ops++; in crypto_dispatch_async()
1466 CRYPTO_RETW_UNLOCK(ret_worker); in crypto_dispatch_async()
1588 struct crypto_ret_worker *ret_worker; in crypto_destroyreq() local
1601 FOREACH_CRYPTO_RETW(ret_worker) { in crypto_destroyreq()
1602 CRYPTO_RETW_LOCK(ret_worker); in crypto_destroyreq()
1603 TAILQ_FOREACH(crp2, &ret_worker->crp_ret_q, crp_next) { in crypto_destroyreq()
1608 CRYPTO_RETW_UNLOCK(ret_worker); in crypto_destroyreq()
1690 struct crypto_ret_worker *ret_worker; in crypto_done() local
1693 ret_worker = CRYPTO_RETW(crp->crp_retw_id); in crypto_done()
1698 CRYPTO_RETW_LOCK(ret_worker); in crypto_done()
1703 &ret_worker->crp_ordered_ret_q, cryptop_q, in crypto_done()
1707 &ret_worker->crp_ordered_ret_q, tmp, in crypto_done()
1714 &ret_worker->crp_ordered_ret_q, crp, in crypto_done()
1718 wake = crp->crp_seq == ret_worker->reorder_cur_seq; in crypto_done()
1720 wake = TAILQ_EMPTY(&ret_worker->crp_ret_q); in crypto_done()
1721 TAILQ_INSERT_TAIL(&ret_worker->crp_ret_q, crp, in crypto_done()
1726 wakeup_one(&ret_worker->crp_ret_q); /* shared wait channel */ in crypto_done()
1727 CRYPTO_RETW_UNLOCK(ret_worker); in crypto_done()
1860 struct crypto_ret_worker *ret_worker = arg; in crypto_ret_thread() local
1863 CRYPTO_RETW_LOCK(ret_worker); in crypto_ret_thread()
1866 crpt = TAILQ_FIRST(&ret_worker->crp_ordered_ret_q); in crypto_ret_thread()
1868 if (crpt->crp_seq == ret_worker->reorder_cur_seq) { in crypto_ret_thread()
1869 TAILQ_REMOVE(&ret_worker->crp_ordered_ret_q, crpt, crp_next); in crypto_ret_thread()
1870 ret_worker->reorder_cur_seq++; in crypto_ret_thread()
1877 crpt = TAILQ_FIRST(&ret_worker->crp_ret_q); in crypto_ret_thread()
1879 TAILQ_REMOVE(&ret_worker->crp_ret_q, crpt, crp_next); in crypto_ret_thread()
1883 CRYPTO_RETW_UNLOCK(ret_worker); in crypto_ret_thread()
1889 CRYPTO_RETW_LOCK(ret_worker); in crypto_ret_thread()
1895 msleep(&ret_worker->crp_ret_q, &ret_worker->crypto_ret_mtx, PWAIT, in crypto_ret_thread()
1897 if (ret_worker->td == NULL) in crypto_ret_thread()
1902 CRYPTO_RETW_UNLOCK(ret_worker); in crypto_ret_thread()
1904 crypto_finis(&ret_worker->crp_ret_q); in crypto_ret_thread()
1935 struct crypto_ret_worker *ret_worker; in DB_SHOW_COMMAND_FLAGS() local
1954 FOREACH_CRYPTO_RETW(ret_worker) { in DB_SHOW_COMMAND_FLAGS()
1957 if (!TAILQ_EMPTY(&ret_worker->crp_ret_q)) { in DB_SHOW_COMMAND_FLAGS()
1958 TAILQ_FOREACH(crp, &ret_worker->crp_ret_q, crp_next) { in DB_SHOW_COMMAND_FLAGS()
1960 , CRYPTO_RETW_ID(ret_worker) in DB_SHOW_COMMAND_FLAGS()