lkml.org 
[lkml]   [2012]   [May]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRe: [PATCH] r6040: disable pci device if the subsequent calls (after pci_enable_device) fails
    Date
    On Monday 28 May 2012 17:27:03 Devendra Naga wrote:
    > the calls after the pci_enable_device may fail, and will error out with out
    > disabling it. disable the device at error paths.

    Looks good, thanks Devendra!

    >
    > Signed-off-by: Devendra Naga <devendra.aaru@gmail.com>

    Acked-by: Florian Fainelli <florian@openwrt.org>

    > ---
    > drivers/net/ethernet/rdc/r6040.c | 10 ++++++----
    > 1 file changed, 6 insertions(+), 4 deletions(-)
    >
    > diff --git a/drivers/net/ethernet/rdc/r6040.c
    b/drivers/net/ethernet/rdc/r6040.c
    > index 4de7364..8f5079a 100644
    > --- a/drivers/net/ethernet/rdc/r6040.c
    > +++ b/drivers/net/ethernet/rdc/r6040.c
    > @@ -1096,20 +1096,20 @@ static int __devinit r6040_init_one(struct pci_dev
    *pdev,
    > if (err) {
    > dev_err(&pdev->dev, "32-bit PCI DMA addresses"
    > "not supported by the card\n");
    > - goto err_out;
    > + goto err_out_disable_dev;
    > }
    > err = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32));
    > if (err) {
    > dev_err(&pdev->dev, "32-bit PCI DMA addresses"
    > "not supported by the card\n");
    > - goto err_out;
    > + goto err_out_disable_dev;
    > }
    >
    > /* IO Size check */
    > if (pci_resource_len(pdev, bar) < io_size) {
    > dev_err(&pdev->dev, "Insufficient PCI resources, aborting\n");
    > err = -EIO;
    > - goto err_out;
    > + goto err_out_disable_dev;
    > }
    >
    > pci_set_master(pdev);
    > @@ -1117,7 +1117,7 @@ static int __devinit r6040_init_one(struct pci_dev
    *pdev,
    > dev = alloc_etherdev(sizeof(struct r6040_private));
    > if (!dev) {
    > err = -ENOMEM;
    > - goto err_out;
    > + goto err_out_disable_dev;
    > }
    > SET_NETDEV_DEV(dev, &pdev->dev);
    > lp = netdev_priv(dev);
    > @@ -1238,6 +1238,8 @@ err_out_free_res:
    > pci_release_regions(pdev);
    > err_out_free_dev:
    > free_netdev(dev);
    > +err_out_disable_dev:
    > + pci_disable_device(dev);
    > err_out:
    > return err;
    > }
    > --
    > 1.7.9.5
    >


    \
     
     \ /
      Last update: 2012-05-29 12:01    [W:0.031 / U:0.152 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site