2020-11-19 13:32:31

by Zhang Changzhong

[permalink] [raw]
Subject: [PATCH net] bnxt_en: fix error return code in bnxt_init_board()

Fix to return a negative error code from the error handling
case instead of 0, as done elsewhere in this function.

Fixes: c0c050c58d84 ("bnxt_en: New Broadcom ethernet driver.")
Reported-by: Hulk Robot <[email protected]>
Signed-off-by: Zhang Changzhong <[email protected]>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
index 7c21aaa8..11d0542 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
@@ -11590,6 +11590,7 @@ static int bnxt_init_board(struct pci_dev *pdev, struct net_device *dev)
if (dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(64)) != 0 &&
dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32)) != 0) {
dev_err(&pdev->dev, "System does not support DMA, aborting\n");
+ rc = -EIO;
goto init_err_disable;
}

--
2.9.5


2020-11-19 18:56:15

by Edwin Peer

[permalink] [raw]
Subject: Re: [PATCH net] bnxt_en: fix error return code in bnxt_init_board()

On Thu, Nov 19, 2020 at 5:29 AM Zhang Changzhong
<[email protected]> wrote:

> Fix to return a negative error code from the error handling
> case instead of 0, as done elsewhere in this function.
>
> Fixes: c0c050c58d84 ("bnxt_en: New Broadcom ethernet driver.")
> Reported-by: Hulk Robot <[email protected]>
> Signed-off-by: Zhang Changzhong <[email protected]>
> ---
> drivers/net/ethernet/broadcom/bnxt/bnxt.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
> index 7c21aaa8..11d0542 100644
> --- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
> +++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
> @@ -11590,6 +11590,7 @@ static int bnxt_init_board(struct pci_dev *pdev, struct net_device *dev)
> if (dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(64)) != 0 &&
> dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32)) != 0) {
> dev_err(&pdev->dev, "System does not support DMA, aborting\n");
> + rc = -EIO;
> goto init_err_disable;
> }
>
> --
> 2.9.5

Reviewed-by: Edwin Peer <[email protected]>

Regards,
Edwin Peer


Attachments:
smime.p7s (4.06 kB)
S/MIME Cryptographic Signature

2020-11-20 05:56:28

by Jakub Kicinski

[permalink] [raw]
Subject: Re: [PATCH net] bnxt_en: fix error return code in bnxt_init_board()

On Thu, 19 Nov 2020 10:53:23 -0800 Edwin Peer wrote:
> > Fix to return a negative error code from the error handling
> > case instead of 0, as done elsewhere in this function.
> >
> > Fixes: c0c050c58d84 ("bnxt_en: New Broadcom ethernet driver.")
> > Reported-by: Hulk Robot <[email protected]>
> > Signed-off-by: Zhang Changzhong <[email protected]>

> > if (dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(64)) != 0 &&
> > dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32)) != 0) {
> > dev_err(&pdev->dev, "System does not support DMA, aborting\n");
> > + rc = -EIO;
> > goto init_err_disable;

Edwin, please double check if this shouldn't jump to
pci_release_regions() (or maybe it's harmless 'cause
PCI likes to magically release things on its own).

> > }
>
> Reviewed-by: Edwin Peer <[email protected]>

Applied thanks!

2020-11-20 07:20:11

by Michael Chan

[permalink] [raw]
Subject: Re: [PATCH net] bnxt_en: fix error return code in bnxt_init_board()

On Thu, Nov 19, 2020 at 9:53 PM Jakub Kicinski <[email protected]> wrote:
>
> On Thu, 19 Nov 2020 10:53:23 -0800 Edwin Peer wrote:
> > > Fix to return a negative error code from the error handling
> > > case instead of 0, as done elsewhere in this function.
> > >
> > > Fixes: c0c050c58d84 ("bnxt_en: New Broadcom ethernet driver.")
> > > Reported-by: Hulk Robot <[email protected]>
> > > Signed-off-by: Zhang Changzhong <[email protected]>
>
> > > if (dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(64)) != 0 &&
> > > dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32)) != 0) {
> > > dev_err(&pdev->dev, "System does not support DMA, aborting\n");
> > > + rc = -EIO;
> > > goto init_err_disable;
>
> Edwin, please double check if this shouldn't jump to
> pci_release_regions() (or maybe it's harmless 'cause
> PCI likes to magically release things on its own).

Good point. We definitely should call pci_release_regions() for correctness.

I will send out the patch shortly. Thanks.


Attachments:
smime.p7s (4.07 kB)
S/MIME Cryptographic Signature