patch-2.4.19 linux-2.4.19/drivers/net/de620.c
Next file: linux-2.4.19/drivers/net/declance.c
Previous file: linux-2.4.19/drivers/net/de4x5.c
Back to the patch index
Back to the overall index
-  Lines: 32
-  Date:
Fri Aug  2 17:39:44 2002
-  Orig file: 
linux-2.4.18/drivers/net/de620.c
-  Orig date: 
Sun Sep 30 12:26:06 2001
diff -urN linux-2.4.18/drivers/net/de620.c linux-2.4.19/drivers/net/de620.c
@@ -449,11 +449,17 @@
 		return ret;
 	}
 
-	if (adapter_init(dev))
-		return -EIO;
+	if (adapter_init(dev)) {
+		ret = -EIO;
+		goto out_free_irq;
+	}
 
 	netif_start_queue(dev);
 	return 0;
+
+out_free_irq:
+	free_irq(dev->irq, dev);
+	return ret;
 }
 
 /************************************************
@@ -850,7 +856,10 @@
 		return -EBUSY;
 	}
 #endif
-	request_region(dev->base_addr, 3, "de620");
+	if (!request_region(dev->base_addr, 3, "de620")) {
+		printk(KERN_ERR "io 0x%3lX, which is busy.\n", dev->base_addr);
+		return -EBUSY;
+	}
 
 	/* else, got it! */
 	printk(", Ethernet Address: %2.2X",
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)