patch-2.4.0-test12 linux/drivers/net/winbond-840.c

Next file: linux/drivers/net/yellowfin.c
Previous file: linux/drivers/net/wd.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.4.0-test11/linux/drivers/net/winbond-840.c linux/drivers/net/winbond-840.c
@@ -367,6 +367,7 @@
 	dev = init_etherdev(NULL, sizeof(*np));
 	if (!dev)
 		return -ENOMEM;
+	SET_MODULE_OWNER(dev);
 
 #ifdef USE_IO_OPS
 	ioaddr = pci_resource_start(pdev, 0);
@@ -623,12 +624,9 @@
 
 	writel(0x00000001, ioaddr + PCIBusCfg);		/* Reset */
 
-	MOD_INC_USE_COUNT;
-
-	if (request_irq(dev->irq, &intr_handler, SA_SHIRQ, dev->name, dev)) {
-		MOD_DEC_USE_COUNT;
-		return -EAGAIN;
-	}
+	i = request_irq(dev->irq, &intr_handler, SA_SHIRQ, dev->name, dev);
+	if (i)
+		return i;
 
 	if (debug > 1)
 		printk(KERN_DEBUG "%s: w89c840_open() irq %d.\n",
@@ -1304,8 +1302,6 @@
 			dev_kfree_skb(np->tx_skbuff[i]);
 		np->tx_skbuff[i] = 0;
 	}
-
-	MOD_DEC_USE_COUNT;
 
 	return 0;
 }

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)