[PATCH] Handle pci_enable_device() errors in resume
[deliverable/linux.git] / drivers / net / tulip / de2104x.c
index 350a73e99a852eeb5674e24e753081c6b2eafed4..17a2ebaef58cf78a2a1baf92977dc10ca2ab70be 100644 (file)
@@ -2138,17 +2138,21 @@ static int de_resume (struct pci_dev *pdev)
 {
        struct net_device *dev = pci_get_drvdata (pdev);
        struct de_private *de = dev->priv;
+       int retval = 0;
 
        rtnl_lock();
        if (netif_device_present(dev))
                goto out;
-       if (netif_running(dev)) {
-               pci_enable_device(pdev);
-               de_init_hw(de);
-               netif_device_attach(dev);
-       } else {
-               netif_device_attach(dev);
+       if (!netif_running(dev))
+               goto out_attach;
+       if ((retval = pci_enable_device(pdev))) {
+               printk (KERN_ERR "%s: pci_enable_device failed in resume\n",
+                       dev->name);
+               goto out;
        }
+       de_init_hw(de);
+out_attach:
+       netif_device_attach(dev);
 out:
        rtnl_unlock();
        return 0;
This page took 0.024452 seconds and 5 git commands to generate.