[PATCH 4/8] common/dpaax: fix array overrun issue

vanshika.shukla at nxp.com vanshika.shukla at nxp.com
Wed Jul 3 13:16:40 CEST 2024


From: Apeksha Gupta <apeksha.gupta at nxp.com>

Out-of-bounds read, Overrunning dynamic array nodes at offset corresponding
to index variable j.

Fixes: 2f3d633aa593 ("common/dpaax: add library for PA/VA translation table")
Cc: stable at dpdk.org

Signed-off-by: Apeksha Gupta <apeksha.gupta at nxp.com>
Signed-off-by: Vanshika Shukla <vanshika.shukla at nxp.com>
---
 drivers/common/dpaax/dpaax_iova_table.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/common/dpaax/dpaax_iova_table.c b/drivers/common/dpaax/dpaax_iova_table.c
index d2a78f4c19..860e702333 100644
--- a/drivers/common/dpaax/dpaax_iova_table.c
+++ b/drivers/common/dpaax/dpaax_iova_table.c
@@ -139,10 +139,12 @@ read_memory_node(unsigned int *count)
 	}
 
 	DPAAX_DEBUG("Device-tree memory node data:");
-	do {
+
+	while (j > 0) {
+		--j;
 		DPAAX_DEBUG("    %08" PRIx64 " %08zu",
 			    nodes[j].addr, nodes[j].len);
-	} while (--j);
+	}
 
 cleanup:
 	close(fd);
-- 
2.25.1



More information about the dev mailing list