Thomas Bogendoerfer 0e1604
From: Michael Chan <michael.chan@broadcom.com>
Thomas Bogendoerfer 0e1604
Date: Sun, 26 Apr 2020 16:24:41 -0400
Thomas Bogendoerfer 0e1604
Subject: bnxt_en: Return error when allocating zero size context memory.
Michal Kubecek 7b08e5
Patch-mainline: v5.7-rc5
Thomas Bogendoerfer 0e1604
Git-commit: bbf211b1ecb891c7e0cc7888834504183fc8b534
Thomas Bogendoerfer 0e1604
References: bsc#1171150
Thomas Bogendoerfer 0e1604
Thomas Bogendoerfer 0e1604
bnxt_alloc_ctx_pg_tbls() should return error when the memory size of the
Thomas Bogendoerfer 0e1604
context memory to set up is zero.  By returning success (0), the caller
Thomas Bogendoerfer 0e1604
may proceed normally and may crash later when it tries to set up the
Thomas Bogendoerfer 0e1604
memory.
Thomas Bogendoerfer 0e1604
Thomas Bogendoerfer 0e1604
Fixes: 08fe9d181606 ("bnxt_en: Add Level 2 context memory paging support.")
Thomas Bogendoerfer 0e1604
Signed-off-by: Michael Chan <michael.chan@broadcom.com>
Thomas Bogendoerfer 0e1604
Signed-off-by: David S. Miller <davem@davemloft.net>
Thomas Bogendoerfer 0e1604
Acked-by: Thomas Bogendoerfer <tbogendoerfer@suse.de>
Thomas Bogendoerfer 0e1604
---
Thomas Bogendoerfer 0e1604
 drivers/net/ethernet/broadcom/bnxt/bnxt.c |    2 +-
Thomas Bogendoerfer 0e1604
 1 file changed, 1 insertion(+), 1 deletion(-)
Thomas Bogendoerfer 0e1604
Thomas Bogendoerfer 0e1604
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
Thomas Bogendoerfer 0e1604
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
Thomas Bogendoerfer 0e1604
@@ -6662,7 +6662,7 @@ static int bnxt_alloc_ctx_pg_tbls(struct
Thomas Bogendoerfer 0e1604
 	int rc;
Thomas Bogendoerfer 0e1604
 
Thomas Bogendoerfer 0e1604
 	if (!mem_size)
Thomas Bogendoerfer 0e1604
-		return 0;
Thomas Bogendoerfer 0e1604
+		return -EINVAL;
Thomas Bogendoerfer 0e1604
 
Thomas Bogendoerfer 0e1604
 	ctx_pg->nr_pages = DIV_ROUND_UP(mem_size, BNXT_PAGE_SIZE);
Thomas Bogendoerfer 0e1604
 	if (ctx_pg->nr_pages > MAX_CTX_TOTAL_PAGES) {