mirror of https://gitee.com/openkylin/linux.git
tc35815: fix iomap leak
If tc35815_init_one() fails we must unmap mapped regions. Signed-off-by: Kulikov Vasiliy <segooon@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
60eb5fd11d
commit
b31fb86815
|
@ -854,7 +854,7 @@ static int __devinit tc35815_init_one(struct pci_dev *pdev,
|
||||||
|
|
||||||
rc = register_netdev(dev);
|
rc = register_netdev(dev);
|
||||||
if (rc)
|
if (rc)
|
||||||
goto err_out;
|
goto err_out_iounmap;
|
||||||
|
|
||||||
memcpy(dev->perm_addr, dev->dev_addr, dev->addr_len);
|
memcpy(dev->perm_addr, dev->dev_addr, dev->addr_len);
|
||||||
printk(KERN_INFO "%s: %s at 0x%lx, %pM, IRQ %d\n",
|
printk(KERN_INFO "%s: %s at 0x%lx, %pM, IRQ %d\n",
|
||||||
|
@ -872,6 +872,8 @@ static int __devinit tc35815_init_one(struct pci_dev *pdev,
|
||||||
|
|
||||||
err_out_unregister:
|
err_out_unregister:
|
||||||
unregister_netdev(dev);
|
unregister_netdev(dev);
|
||||||
|
err_out_iounmap:
|
||||||
|
pcim_iounmap_regions(pdev, 1 << 1);
|
||||||
err_out:
|
err_out:
|
||||||
free_netdev(dev);
|
free_netdev(dev);
|
||||||
return rc;
|
return rc;
|
||||||
|
|
Loading…
Reference in New Issue