diff mbox series

net: ethernet: ixp4xx: Add error handling in ixp4xx_eth_probe()

Message ID 20200412092728.8396-1-tangbin@cmss.chinamobile.com
State Changes Requested
Delegated to: David Miller
Headers show
Series net: ethernet: ixp4xx: Add error handling in ixp4xx_eth_probe() | expand

Commit Message

Tang Bin April 12, 2020, 9:27 a.m. UTC
The function ixp4xx_eth_probe() does not perform sufficient error
checking after executing devm_ioremap_resource(),which can result
in crashes if a critical error path is encountered.

Signed-off-by: Tang Bin <tangbin@cmss.chinamobile.com>
Signed-off-by: Shengju Zhang <zhangshengju@cmss.chinamobile.com>
---
 drivers/net/ethernet/xscale/ixp4xx_eth.c | 2 ++
 1 file changed, 2 insertions(+)

Comments

Jakub Kicinski April 12, 2020, 6:35 p.m. UTC | #1
On Sun, 12 Apr 2020 17:27:28 +0800 Tang Bin wrote:
> The function ixp4xx_eth_probe() does not perform sufficient error
> checking after executing devm_ioremap_resource(),which can result
> in crashes if a critical error path is encountered.
> 
> Signed-off-by: Tang Bin <tangbin@cmss.chinamobile.com>
> Signed-off-by: Shengju Zhang <zhangshengju@cmss.chinamobile.com>

Please provide an appropriate Fixes: tag.
Tang Bin April 13, 2020, 10:59 a.m. UTC | #2
Hi:

On 2020/4/13 2:35, Jakub Kicinski wrote:
> Please provide an appropriate Fixes: tag.

Should be:

Fixes: f458ac47 ("ARM/net: ixp4xx: Pass ethernet physical base as 
resource").


Thanks,

Tang Bin
Tang Bin April 21, 2020, 4:46 a.m. UTC | #3
Hi Jakub:

On 2020/4/13 2:35, Jakub Kicinski wrote:
> On Sun, 12 Apr 2020 17:27:28 +0800 Tang Bin wrote:
>> The function ixp4xx_eth_probe() does not perform sufficient error
>> checking after executing devm_ioremap_resource(),which can result
>> in crashes if a critical error path is encountered.
>>
> Please provide an appropriate Fixes: tag.

Thanks for your reply.

I don't know whether the commit message affect this patch's result. If so,

I think the commit message in v2 needs more clarification. As follows:

     The function ixp4xx_eth_probe() does not perform sufficient error 
checking

after executing devm_ioremap_resource(), which can result in crashes if 
a critical

error path is encountered.

     Fixes: f458ac479777 ("ARM/net: ixp4xx: Pass ethernet physical base 
as resource").


I'm waiting for you reply actively.

Thanks,

Tang Bin
Jakub Kicinski April 21, 2020, 5:05 p.m. UTC | #4
On Tue, 21 Apr 2020 12:46:37 +0800 Tang Bin wrote:
> Hi Jakub:
> 
> On 2020/4/13 2:35, Jakub Kicinski wrote:
> > On Sun, 12 Apr 2020 17:27:28 +0800 Tang Bin wrote:  
> >> The function ixp4xx_eth_probe() does not perform sufficient error
> >> checking after executing devm_ioremap_resource(),which can result
> >> in crashes if a critical error path is encountered.
> >>  
> > Please provide an appropriate Fixes: tag.  
> 
> Thanks for your reply.
> 
> I don't know whether the commit message affect this patch's result. If so,
> 
> I think the commit message in v2 needs more clarification. As follows:
> 
>      The function ixp4xx_eth_probe() does not perform sufficient error 
> checking
> 
> after executing devm_ioremap_resource(), which can result in crashes if 
> a critical
> 
> error path is encountered.
> 
>      Fixes: f458ac479777 ("ARM/net: ixp4xx: Pass ethernet physical base 
> as resource").
> 
> 
> I'm waiting for you reply actively.

Please repost with the tag included.
diff mbox series

Patch

diff --git a/drivers/net/ethernet/xscale/ixp4xx_eth.c b/drivers/net/ethernet/xscale/ixp4xx_eth.c
index 269596c15..2e5202923 100644
--- a/drivers/net/ethernet/xscale/ixp4xx_eth.c
+++ b/drivers/net/ethernet/xscale/ixp4xx_eth.c
@@ -1387,6 +1387,8 @@  static int ixp4xx_eth_probe(struct platform_device *pdev)
 		return -ENODEV;
 	regs_phys = res->start;
 	port->regs = devm_ioremap_resource(dev, res);
+	if (IS_ERR(port->regs))
+		return PTR_ERR(port->regs);
 
 	switch (port->id) {
 	case IXP4XX_ETH_NPEA: