| 820 | } |
| 821 | |
| 822 | int |
| 823 | nitrox_process_se_req(uint16_t qno, struct rte_crypto_op *op, |
| 824 | struct nitrox_crypto_ctx *ctx, |
| 825 | struct nitrox_softreq *sr) |
| 826 | { |
| 827 | int err; |
| 828 | |
| 829 | if (unlikely(op->sym->m_src->nb_segs > MAX_SUPPORTED_MBUF_SEGS || |
| 830 | (op->sym->m_dst && |
| 831 | op->sym->m_dst->nb_segs > MAX_SUPPORTED_MBUF_SEGS))) { |
| 832 | NITROX_LOG(ERR, "Mbuf segments not supported. " |
| 833 | "Max supported %d\n", MAX_SUPPORTED_MBUF_SEGS); |
| 834 | return -ENOTSUP; |
| 835 | } |
| 836 | |
| 837 | softreq_init(sr, sr->iova); |
| 838 | sr->ctx = ctx; |
| 839 | sr->op = op; |
| 840 | err = process_softreq(sr); |
| 841 | if (unlikely(err)) |
| 842 | return err; |
| 843 | |
| 844 | create_se_instr(sr, qno); |
| 845 | sr->timeout = rte_get_timer_cycles() + CMD_TIMEOUT * rte_get_timer_hz(); |
| 846 | return 0; |
| 847 | } |
| 848 | |
| 849 | int |
| 850 | nitrox_check_se_req(struct nitrox_softreq *sr, struct rte_crypto_op **op) |
no test coverage detected