Home | History | Annotate | Download | only in opencrypto

Lines Matching defs:krp

736 cryptodevkey_cb(struct cryptkop *krp)
740 krp->krp_devflags |= CRYPTODEV_F_RET;
741 cv_signal(&krp->krp_cv);
746 cryptodevkey_mcb(struct cryptkop *krp)
750 cv_signal(&krp->krp_cv);
751 TAILQ_INSERT_TAIL(&krp->fcrp->crp_ret_mkq, krp, krp_next);
752 selnotify(&krp->fcrp->sinfo, 0, 0);
759 struct cryptkop *krp = NULL;
817 krp = crypto_kgetreq(1, PR_WAITOK);
818 if (krp == NULL) {
822 (void)memset(krp, 0, sizeof *krp);
823 cv_init(&krp->krp_cv, "crykdev");
824 krp->krp_op = kop->crk_op;
825 krp->krp_status = kop->crk_status;
826 krp->krp_iparams = kop->crk_iparams;
827 krp->krp_oparams = kop->crk_oparams;
828 krp->krp_status = 0;
829 krp->krp_callback = cryptodevkey_cb;
832 krp->krp_param[i].crp_nbits = kop->crk_param[i].crp_nbits;
833 for (i = 0; i < krp->krp_iparams + krp->krp_oparams; i++) {
834 size = (krp->krp_param[i].crp_nbits + 7) / 8;
837 krp->krp_param[i].crp_p = kmem_alloc(size, KM_SLEEP);
838 if (i >= krp->krp_iparams)
841 krp->krp_param[i].crp_p, size);
846 crypto_kdispatch(krp);
849 while (!(krp->krp_devflags & CRYPTODEV_F_RET)) {
850 cv_wait(&krp->krp_cv, &cryptodev_mtx); /* XXX cv_wait_sig? */
854 if (krp->krp_status != 0) {
855 DPRINTF("krp->krp_status 0x%08x\n", krp->krp_status);
856 error = krp->krp_status;
860 for (i = krp->krp_iparams; i < krp->krp_iparams + krp->krp_oparams;
862 size = (krp->krp_param[i].crp_nbits + 7) / 8;
865 error = copyout(krp->krp_param[i].crp_p,
869 "error=%d\n", i-krp->krp_iparams, error);
875 kop->crk_status = krp->krp_status;
877 struct crparam *kp = &(krp->krp_param[i]);
878 if (krp->krp_param[i].crp_p) {
885 cv_destroy(&krp->krp_cv);
886 crypto_kfreereq(krp);
1316 struct cryptkop *krp = NULL;
1387 krp = crypto_kgetreq(1, PR_WAITOK);
1388 if (krp == NULL) {
1392 (void)memset(krp, 0, sizeof *krp);
1393 cv_init(&krp->krp_cv, "crykdev");
1394 krp->krp_op = kop[req].crk_op;
1395 krp->krp_status = kop[req].crk_status;
1396 krp->krp_iparams = kop[req].crk_iparams;
1397 krp->krp_oparams = kop[req].crk_oparams;
1398 krp->krp_status = 0;
1399 krp->krp_callback = cryptodevkey_mcb;
1400 (void)memcpy(krp->crk_param, kop[req].crk_param,
1403 krp->krp_flags = 0;
1406 krp->krp_param[i].crp_nbits =
1408 for (i = 0; i < krp->krp_iparams + krp->krp_oparams; i++) {
1409 size = (krp->krp_param[i].crp_nbits + 7) / 8;
1412 krp->krp_param[i].crp_p =
1414 if (i >= krp->krp_iparams)
1418 krp->krp_param[i].crp_p, size);
1422 krp->fcrp = fcr;
1425 krp->krp_reqid = kop[req].crk_reqid;
1426 krp->krp_usropaque = kop[req].crk_opaque;
1428 crypto_kdispatch(krp);
1432 if (krp) {
1433 kop[req].crk_status = krp->krp_status;
1436 &(krp->krp_param[i]);
1444 cv_destroy(&krp->krp_cv);
1445 crypto_kfreereq(krp);
1739 struct cryptkop *krp = NULL;
1777 krp = TAILQ_FIRST(&fcr->crp_ret_mkq);
1778 if (krp) {
1779 TAILQ_REMOVE(&fcr->crp_ret_mkq, krp, krp_next);
1780 TAILQ_INSERT_TAIL(&krp_delfree_q, krp, krp_next);
1829 krp = TAILQ_FIRST(&krp_delfree_q);
1830 if (krp) {
1831 crypt_res[req].reqid = krp->krp_reqid;
1832 crypt_res[req].opaque = krp->krp_usropaque;
1834 if (krp->krp_status != 0) {
1835 DPRINTF("krp->krp_status 0x%08x\n",
1836 krp->krp_status);
1837 crypt_res[req].status = krp->krp_status;
1841 for (i = krp->krp_iparams; i < krp->krp_iparams
1842 + krp->krp_oparams; i++) {
1843 size = (krp->krp_param[i].crp_nbits
1848 (krp->krp_param[i].crp_p,
1849 krp->crk_param[i].crp_p, size);
1853 i - krp->krp_iparams,
1859 TAILQ_REMOVE(&krp_delfree_q, krp, krp_next);
1861 /* kop[req].crk_status = krp->krp_status; */
1863 struct crparam *kp = &(krp->krp_param[i]);
1871 cv_destroy(&krp->krp_cv);
1872 crypto_kfreereq(krp);
1885 struct cryptkop *krp = NULL, *knext;
1931 TAILQ_FOREACH_SAFE(krp, &fcr->crp_ret_mkq, krp_next, knext) {
1932 if(krp && (krp->krp_reqid == crypt_res->reqid)) {
1933 krp->krp_usropaque;
1934 if (krp->krp_status != 0) {
1935 DPRINTF("krp->krp_status 0x%08x\n",
1936 krp->krp_status);
1937 crypt_res[req].status = krp->krp_status;
1941 for (i = krp->krp_iparams; i < krp->krp_iparams +
1942 krp->krp_oparams; i++) {
1943 size = (krp->krp_param[i].crp_nbits + 7) / 8;
1947 krp->krp_param[i].crp_p,
1948 krp->crk_param[i].crp_p, size);
1952 i - krp->krp_iparams,
1958 TAILQ_REMOVE(&fcr->crp_ret_mkq, krp, krp_next);
1961 /* kop[req].crk_status = krp->krp_status; */
1963 struct crparam *kp = &(krp->krp_param[i]);
1971 cv_destroy(&krp->krp_cv);
1972 crypto_kfreereq(krp);