From: Michael Chan Date: Thu, 26 Oct 2017 15:51:22 +0000 (-0400) Subject: bnxt_en: Check for zero length value in bnxt_get_nvram_item(). X-Git-Tag: v4.1.12-124.31.3~943 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=8e943d1a34d2f0fd084ca516e8317aa66e84f8ae;p=users%2Fjedix%2Flinux-maple.git bnxt_en: Check for zero length value in bnxt_get_nvram_item(). Orabug: 27648355, 27648339 Return -EINVAL if the length is zero and not proceed to do essentially nothing. Signed-off-by: Michael Chan Signed-off-by: David S. Miller (cherry picked from commit e0ad8fc5980b362028cfd63ec037f4b491e726c6) Signed-off-by: Brian Maly Reviewed-by: Jack Vogel --- diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c b/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c index 7b0ba4b9254c..2f85ddeb8819 100644 --- a/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c +++ b/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c @@ -1991,6 +1991,9 @@ static int bnxt_get_nvram_item(struct net_device *dev, u32 index, u32 offset, dma_addr_t dma_handle; struct hwrm_nvm_read_input req = {0}; + if (!length) + return -EINVAL; + buf = dma_alloc_coherent(&bp->pdev->dev, length, &dma_handle, GFP_KERNEL); if (!buf) {