Lines Matching full:wr
244 struct g_eli_worker *wr; in g_eli_crypto_rerun() local
250 LIST_FOREACH(wr, &sc->sc_workers, w_next) { in g_eli_crypto_rerun()
251 if (wr->w_number == G_ELI_WORKER(bp->bio_pflags)) in g_eli_crypto_rerun()
254 KASSERT(wr != NULL, ("Invalid worker (%u).", in g_eli_crypto_rerun()
257 bp->bio_cmd == BIO_READ ? "READ" : "WRITE", wr->w_sid, in g_eli_crypto_rerun()
259 wr->w_sid = crp->crp_session; in g_eli_crypto_rerun()
531 g_eli_newsession(struct g_eli_worker *wr) in g_eli_newsession() argument
539 sc = wr->w_softc; in g_eli_newsession()
565 error = crypto_newsession(&wr->w_sid, &csp, in g_eli_newsession()
569 error = crypto_newsession(&wr->w_sid, &csp, in g_eli_newsession()
573 error = crypto_newsession(&wr->w_sid, &csp, in g_eli_newsession()
576 caps = crypto_ses2caps(wr->w_sid); in g_eli_newsession()
597 wr->w_first_key = key; in g_eli_newsession()
604 g_eli_freesession(struct g_eli_worker *wr) in g_eli_freesession() argument
608 crypto_freesession(wr->w_sid); in g_eli_freesession()
609 if (wr->w_first_key != NULL) { in g_eli_freesession()
610 sc = wr->w_softc; in g_eli_freesession()
611 g_eli_key_drop(sc, wr->w_first_key); in g_eli_freesession()
612 wr->w_first_key = NULL; in g_eli_freesession()
661 struct g_eli_worker *wr; in g_eli_worker() local
665 wr = arg; in g_eli_worker()
666 sc = wr->w_softc; in g_eli_worker()
673 tsleep(wr, 0, "geli:smp", hz / 4); in g_eli_worker()
679 sched_bind(curthread, wr->w_number % mp_ncpus); in g_eli_worker()
691 LIST_REMOVE(wr, w_next); in g_eli_worker()
692 g_eli_freesession(wr); in g_eli_worker()
693 free(wr, M_ELI); in g_eli_worker()
716 if (wr->w_active) { in g_eli_worker()
717 g_eli_freesession(wr); in g_eli_worker()
718 wr->w_active = FALSE; in g_eli_worker()
723 if (!wr->w_active && in g_eli_worker()
725 error = g_eli_newsession(wr); in g_eli_worker()
729 wr->w_active = TRUE; in g_eli_worker()
745 g_eli_auth_run(wr, bp); in g_eli_worker()
750 g_eli_crypto_run(wr, bp); in g_eli_worker()
754 g_eli_auth_run(wr, bp); in g_eli_worker()
756 g_eli_crypto_run(wr, bp); in g_eli_worker()
1008 struct g_eli_worker *wr; in g_eli_create() local
1103 wr = malloc(sizeof(*wr), M_ELI, M_WAITOK | M_ZERO); in g_eli_create()
1104 wr->w_softc = sc; in g_eli_create()
1105 wr->w_number = i; in g_eli_create()
1106 wr->w_active = TRUE; in g_eli_create()
1108 error = g_eli_newsession(wr); in g_eli_create()
1110 free(wr, M_ELI); in g_eli_create()
1121 error = kproc_create(g_eli_worker, wr, &wr->w_proc, 0, 0, in g_eli_create()
1124 g_eli_freesession(wr); in g_eli_create()
1125 free(wr, M_ELI); in g_eli_create()
1135 LIST_INSERT_HEAD(&sc->sc_workers, wr, w_next); in g_eli_create()