From: Tejasree Kondoj <ktejasree@marvell.com>
Falling back to SG mode for cn9k lookaside IPsec
if headroom is not available.
Signed-off-by: Tejasree Kondoj <ktejasree@marvell.com>
---
drivers/crypto/cnxk/cn9k_ipsec_la_ops.h | 8 +-------
1 file changed, 1 insertion(+), 7 deletions(-)
@@ -82,19 +82,13 @@ process_outb_sa(struct cpt_qp_meta_info *m_info, struct rte_crypto_op *cop,
extend_tail = rlen - dlen;
pkt_len += extend_tail;
- if (likely(m_src->next == NULL)) {
+ if (likely((m_src->next == NULL) && (hdr_len <= data_off))) {
if (unlikely(extend_tail > rte_pktmbuf_tailroom(m_src))) {
plt_dp_err("Not enough tail room (required: %d, available: %d)",
extend_tail, rte_pktmbuf_tailroom(m_src));
return -ENOMEM;
}
- if (unlikely(hdr_len > data_off)) {
- plt_dp_err("Not enough head room (required: %d, available: %d)", hdr_len,
- rte_pktmbuf_headroom(m_src));
- return -ENOMEM;
- }
-
m_src->data_len = pkt_len;
hdr = PLT_PTR_ADD(m_src->buf_addr, data_off - hdr_len);