Lines Matching refs:ret_worker
302 struct crypto_ret_worker *ret_worker; in crypto_init() local
340 FOREACH_CRYPTO_RETW(ret_worker) { in crypto_init()
341 TAILQ_INIT(&ret_worker->crp_ordered_ret_q); in crypto_init()
342 TAILQ_INIT(&ret_worker->crp_ret_q); in crypto_init()
344 ret_worker->reorder_ops = 0; in crypto_init()
345 ret_worker->reorder_cur_seq = 0; in crypto_init()
347 mtx_init(&ret_worker->crypto_ret_mtx, "crypto return queues", in crypto_init()
350 error = kthread_add(crypto_ret_thread, ret_worker, p, in crypto_init()
351 &ret_worker->td, 0, 0, "crypto returns %td", in crypto_init()
352 CRYPTO_RETW_ID(ret_worker)); in crypto_init()
439 struct crypto_ret_worker *ret_worker; in crypto_destroy() local
449 FOREACH_CRYPTO_RETW(ret_worker) in crypto_destroy()
450 crypto_terminate(&ret_worker->td, &ret_worker->crp_ret_q); in crypto_destroy()
467 FOREACH_CRYPTO_RETW(ret_worker) in crypto_destroy()
468 mtx_destroy(&ret_worker->crypto_ret_mtx); in crypto_destroy()
1454 struct crypto_ret_worker *ret_worker; in crypto_dispatch_async() local
1472 ret_worker = CRYPTO_RETW(crp->crp_retw_id); in crypto_dispatch_async()
1473 CRYPTO_RETW_LOCK(ret_worker); in crypto_dispatch_async()
1474 crp->crp_seq = ret_worker->reorder_ops++; in crypto_dispatch_async()
1475 CRYPTO_RETW_UNLOCK(ret_worker); in crypto_dispatch_async()
1597 struct crypto_ret_worker *ret_worker; in crypto_destroyreq() local
1610 FOREACH_CRYPTO_RETW(ret_worker) { in crypto_destroyreq()
1611 CRYPTO_RETW_LOCK(ret_worker); in crypto_destroyreq()
1612 TAILQ_FOREACH(crp2, &ret_worker->crp_ret_q, crp_next) { in crypto_destroyreq()
1617 CRYPTO_RETW_UNLOCK(ret_worker); in crypto_destroyreq()
1703 struct crypto_ret_worker *ret_worker; in crypto_done() local
1706 ret_worker = CRYPTO_RETW(crp->crp_retw_id); in crypto_done()
1711 CRYPTO_RETW_LOCK(ret_worker); in crypto_done()
1716 &ret_worker->crp_ordered_ret_q, cryptop_q, in crypto_done()
1720 &ret_worker->crp_ordered_ret_q, tmp, in crypto_done()
1727 &ret_worker->crp_ordered_ret_q, crp, in crypto_done()
1731 wake = crp->crp_seq == ret_worker->reorder_cur_seq; in crypto_done()
1733 wake = TAILQ_EMPTY(&ret_worker->crp_ret_q); in crypto_done()
1734 TAILQ_INSERT_TAIL(&ret_worker->crp_ret_q, crp, in crypto_done()
1739 wakeup_one(&ret_worker->crp_ret_q); /* shared wait channel */ in crypto_done()
1740 CRYPTO_RETW_UNLOCK(ret_worker); in crypto_done()
1873 struct crypto_ret_worker *ret_worker = arg; in crypto_ret_thread() local
1876 CRYPTO_RETW_LOCK(ret_worker); in crypto_ret_thread()
1879 crpt = TAILQ_FIRST(&ret_worker->crp_ordered_ret_q); in crypto_ret_thread()
1881 if (crpt->crp_seq == ret_worker->reorder_cur_seq) { in crypto_ret_thread()
1882 TAILQ_REMOVE(&ret_worker->crp_ordered_ret_q, crpt, crp_next); in crypto_ret_thread()
1883 ret_worker->reorder_cur_seq++; in crypto_ret_thread()
1890 crpt = TAILQ_FIRST(&ret_worker->crp_ret_q); in crypto_ret_thread()
1892 TAILQ_REMOVE(&ret_worker->crp_ret_q, crpt, crp_next); in crypto_ret_thread()
1896 CRYPTO_RETW_UNLOCK(ret_worker); in crypto_ret_thread()
1902 CRYPTO_RETW_LOCK(ret_worker); in crypto_ret_thread()
1908 msleep(&ret_worker->crp_ret_q, &ret_worker->crypto_ret_mtx, PWAIT, in crypto_ret_thread()
1910 if (ret_worker->td == NULL) in crypto_ret_thread()
1915 CRYPTO_RETW_UNLOCK(ret_worker); in crypto_ret_thread()
1917 crypto_finis(&ret_worker->crp_ret_q); in crypto_ret_thread()
1948 struct crypto_ret_worker *ret_worker; in DB_SHOW_COMMAND_FLAGS() local
1967 FOREACH_CRYPTO_RETW(ret_worker) { in DB_SHOW_COMMAND_FLAGS()
1970 if (!TAILQ_EMPTY(&ret_worker->crp_ret_q)) { in DB_SHOW_COMMAND_FLAGS()
1971 TAILQ_FOREACH(crp, &ret_worker->crp_ret_q, crp_next) { in DB_SHOW_COMMAND_FLAGS()
1973 , CRYPTO_RETW_ID(ret_worker) in DB_SHOW_COMMAND_FLAGS()