patch-2.4.0-test6 linux/drivers/net/gmac.c

Next file: linux/drivers/net/hamradio/Makefile
Previous file: linux/drivers/net/fc/iph5526.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.4.0-test5/linux/drivers/net/gmac.c linux/drivers/net/gmac.c
@@ -5,12 +5,14 @@
  * Copyright (C) 2000 Paul Mackerras & Ben. Herrenschmidt
  * 
  * portions based on sunhme.c by David S. Miller
+ *
+ * Changes:
+ * Arnaldo Carvalho de Melo <acme@conectiva.com.br> - 08/06/2000
+ * - check init_etherdev return in gmac_probe1
  * 
  */
 
 #include <linux/module.h>
-
-#include <linux/config.h>
 #include <linux/kernel.h>
 #include <linux/sched.h>
 #include <linux/types.h>
@@ -1180,7 +1182,13 @@
 	}
 
 	dev = init_etherdev(0, sizeof(struct gmac));
-	memset(dev->priv, 0, sizeof(struct gmac));
+
+	if (!dev) {
+		printk(KERN_ERR "GMAC: init_etherdev failed, out of memory\n");
+		free_page(tx_descpage);
+		free_page(rx_descpage);
+		return;
+	}
 
 	gm = (struct gmac *) dev->priv;
 	dev->base_addr = gmac->addrs[0].address;

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