bnxt_en: Return error when allocating zero size context memory.
authorMichael Chan <michael.chan@broadcom.com>
Sun, 26 Apr 2020 20:24:41 +0000 (16:24 -0400)
committerDavid S. Miller <davem@davemloft.net>
Mon, 27 Apr 2020 18:44:05 +0000 (11:44 -0700)
bnxt_alloc_ctx_pg_tbls() should return error when the memory size of the
context memory to set up is zero.  By returning success (0), the caller
may proceed normally and may crash later when it tries to set up the
memory.

Fixes: 08fe9d181606 ("bnxt_en: Add Level 2 context memory paging support.")
Signed-off-by: Michael Chan <michael.chan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/broadcom/bnxt/bnxt.c

index d8db08ec86935c6164aea022eb246b7389acb902..070c42d3318f96eefe7c83510659bc94f75d8ce3 100644 (file)
@@ -6642,7 +6642,7 @@ static int bnxt_alloc_ctx_pg_tbls(struct bnxt *bp,
        int rc;
 
        if (!mem_size)
-               return 0;
+               return -EINVAL;
 
        ctx_pg->nr_pages = DIV_ROUND_UP(mem_size, BNXT_PAGE_SIZE);
        if (ctx_pg->nr_pages > MAX_CTX_TOTAL_PAGES) {