[PATCH 36/54] net/bnxt: avoid iova range check when external memory is used
Manish Kurup
manish.kurup at broadcom.com
Tue Sep 30 02:35:46 CEST 2025
From: Sriharsha Basavapatna <sriharsha.basavapatna at broadcom.com>
The function checks if the iova is in the valid range. But this check
is not relevant to external memory; avoid it when external memory is
in use.
Signed-off-by: Sriharsha Basavapatna <sriharsha.basavapatna at broadcom.com>
Reviewed-by: Andy Gospodarek <andrew.gospodarek at broadcom.com>
Reviewed-by: Ajit Khaparde <ajit.khaparde at broadcom.com>
Reviewed-by: Ning Wang <ning-nw.wang at broadcom.com>
Reviewed-by: Kalesh AP <kalesh-anakkur.purayil at broadcom.com>
Reviewed-by: Somnath Kotur <somnath.kotur at broadcom.com>
---
drivers/net/bnxt/bnxt_txr.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/net/bnxt/bnxt_txr.c b/drivers/net/bnxt/bnxt_txr.c
index f88e214790..27758898b0 100644
--- a/drivers/net/bnxt/bnxt_txr.c
+++ b/drivers/net/bnxt/bnxt_txr.c
@@ -221,8 +221,9 @@ static int bnxt_invalid_mbuf(struct rte_mbuf *mbuf)
if (unlikely(rte_mbuf_check(mbuf, 1, &reason)))
return -EINVAL;
- if (unlikely(mbuf->buf_iova < mbuf_size ||
- (mbuf->buf_iova != rte_mempool_virt2iova(mbuf) + mbuf_size)))
+ if (unlikely(!(mbuf->ol_flags & RTE_MBUF_F_EXTERNAL) &&
+ (mbuf->buf_iova < mbuf_size ||
+ (mbuf->buf_iova != rte_mempool_virt2iova(mbuf) + mbuf_size))))
return -EINVAL;
return 0;
--
2.39.5 (Apple Git-154)
More information about the dev
mailing list