[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <BYAPR18MB24238F63DCDC1A7DC3679F4ECC5BA@BYAPR18MB2423.namprd18.prod.outlook.com>
Date: Thu, 15 Jun 2023 15:44:33 +0000
From: Veerasenareddy Burru <vburru@...vell.com>
To: Jiasheng Jiang <jiasheng@...as.ac.cn>,
"kuba@...nel.org" <kuba@...nel.org>
CC: Abhijit Ayarekar <aayarekar@...vell.com>,
"davem@...emloft.net" <davem@...emloft.net>,
"edumazet@...gle.com" <edumazet@...gle.com>,
"pabeni@...hat.com" <pabeni@...hat.com>,
Satananda Burla <sburla@...vell.com>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: RE: [EXT] [PATCH v2] octeon_ep: Add missing check for ioremap
> -----Original Message-----
> From: Jiasheng Jiang <jiasheng@...as.ac.cn>
> Sent: Wednesday, June 14, 2023 8:34 PM
> To: kuba@...nel.org
> Cc: Veerasenareddy Burru <vburru@...vell.com>; Abhijit Ayarekar
> <aayarekar@...vell.com>; davem@...emloft.net; edumazet@...gle.com;
> pabeni@...hat.com; Satananda Burla <sburla@...vell.com>;
> netdev@...r.kernel.org; linux-kernel@...r.kernel.org; Jiasheng Jiang
> <jiasheng@...as.ac.cn>
> Subject: [EXT] [PATCH v2] octeon_ep: Add missing check for ioremap
>
> External Email
>
> ----------------------------------------------------------------------
> Add check for ioremap() and return the error if it fails in order to guarantee the
> success of ioremap().
>
> Fixes: 862cd659a6fb ("octeon_ep: Add driver framework and device
> initialization")
> Signed-off-by: Jiasheng Jiang <jiasheng@...as.ac.cn>
> ---
> Changelog:
>
> v1-> v2:
>
> 1. Rewrite the error handling.
> ---
> drivers/net/ethernet/marvell/octeon_ep/octep_main.c | 7 ++++++-
> 1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/ethernet/marvell/octeon_ep/octep_main.c
> b/drivers/net/ethernet/marvell/octeon_ep/octep_main.c
> index e1853da280f9..43eb6e871351 100644
> --- a/drivers/net/ethernet/marvell/octeon_ep/octep_main.c
> +++ b/drivers/net/ethernet/marvell/octeon_ep/octep_main.c
> @@ -981,6 +981,9 @@ int octep_device_setup(struct octep_device *oct)
> oct->mmio[i].hw_addr =
> ioremap(pci_resource_start(oct->pdev, i * 2),
> pci_resource_len(oct->pdev, i * 2));
> + if (!oct->mmio[i].hw_addr)
> + goto unmap_prev;
> +
> oct->mmio[i].mapped = 1;
> }
>
> @@ -1015,7 +1018,9 @@ int octep_device_setup(struct octep_device *oct)
> return 0;
>
> unsupported_dev:
> - for (i = 0; i < OCTEP_MMIO_REGIONS; i++)
> + i = OCTEP_MMIO_REGIONS;
> +unmap_prev:
> + while (i--)
> iounmap(oct->mmio[i].hw_addr);
>
> kfree(oct->conf);
Ack
changes look good. Thank you.
> --
> 2.25.1
Powered by blists - more mailing lists