diff mbox series

[04/15] crypto: fix raw process for multi-seg case

Message ID 20210825071510.7913-5-hemant.agrawal@nxp.com
State Superseded
Headers show
Series crypto: add raw vector support in DPAAx | expand

Commit Message

Hemant Agrawal Aug. 25, 2021, 7:14 a.m. UTC
From: Gagandeep Singh <g.singh@nxp.com>


If no next segment available the “for” loop will fail and it still
returns i+1 i.e. 2, which is wrong as it has filled only 1 buffer.

Fixes: 7adf992fb9bf ("cryptodev: introduce CPU crypto API")
Cc: marcinx.smoczynski@intel.com
Cc: stable@dpdk.org

Signed-off-by: Gagandeep Singh <g.singh@nxp.com>

---
 lib/cryptodev/rte_crypto_sym.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

-- 
2.17.1

Comments

Akhil Goyal Sept. 6, 2021, 6:38 p.m. UTC | #1
> From: Gagandeep Singh <g.singh@nxp.com>

> 

> If no next segment available the “for” loop will fail and it still

> returns i+1 i.e. 2, which is wrong as it has filled only 1 buffer.

> 

> Fixes: 7adf992fb9bf ("cryptodev: introduce CPU crypto API")

> Cc: marcinx.smoczynski@intel.com

> Cc: stable@dpdk.org

> 

> Signed-off-by: Gagandeep Singh <g.singh@nxp.com>

@Fan: Could you please review this patch.
diff mbox series

Patch

diff --git a/lib/cryptodev/rte_crypto_sym.h b/lib/cryptodev/rte_crypto_sym.h
index 978708845f..a48228a646 100644
--- a/lib/cryptodev/rte_crypto_sym.h
+++ b/lib/cryptodev/rte_crypto_sym.h
@@ -1003,6 +1003,7 @@  rte_crypto_mbuf_to_vec(const struct rte_mbuf *mb, uint32_t ofs, uint32_t len,
 			vec[i].len = left;
 			vec[i].tot_len = mb->buf_len;
 			left = 0;
+			i++;
 			break;
 		}
 
@@ -1013,7 +1014,7 @@  rte_crypto_mbuf_to_vec(const struct rte_mbuf *mb, uint32_t ofs, uint32_t len,
 	}
 
 	RTE_ASSERT(left == 0);
-	return i + 1;
+	return i;
 }