Commit ee313528 authored by Richard Kennedy's avatar Richard Kennedy Committed by Greg Kroah-Hartman

Staging: wlan-ng: p80211netdev.c fix netdev alloc to prevent oops on device start

a version of this patch is in the wlan-ng_devel tree

initializes netdev correctly to prevent an oops on device start.
Signed-off-by: default avatarRichard Kennedy <richard@rsk.demon.co.uk>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 56afef56
...@@ -814,13 +814,11 @@ int wlan_setup(wlandevice_t *wlandev) ...@@ -814,13 +814,11 @@ int wlan_setup(wlandevice_t *wlandev)
(unsigned long)wlandev); (unsigned long)wlandev);
/* Allocate and initialize the struct device */ /* Allocate and initialize the struct device */
dev = kmalloc(sizeof(netdevice_t), GFP_ATOMIC); dev = alloc_netdev(0,"wlan%d",ether_setup);
if ( dev == NULL ) { if ( dev == NULL ) {
WLAN_LOG_ERROR("Failed to alloc netdev.\n"); WLAN_LOG_ERROR("Failed to alloc netdev.\n");
result = 1; result = 1;
} else { } else {
memset( dev, 0, sizeof(netdevice_t));
ether_setup(dev);
wlandev->netdev = dev; wlandev->netdev = dev;
dev->ml_priv = wlandev; dev->ml_priv = wlandev;
dev->hard_start_xmit = p80211knetdev_hard_start_xmit; dev->hard_start_xmit = p80211knetdev_hard_start_xmit;
...@@ -927,15 +925,9 @@ int register_wlandev(wlandevice_t *wlandev) ...@@ -927,15 +925,9 @@ int register_wlandev(wlandevice_t *wlandev)
DBFENTER; DBFENTER;
i = dev_alloc_name(wlandev->netdev, "wlan%d"); i = register_netdev(wlandev->netdev);
if (i >= 0) { if (i)
i = register_netdev(wlandev->netdev); return i;
}
if (i != 0) {
return -EIO;
}
strcpy(wlandev->name, dev->name);
DBFEXIT; DBFEXIT;
return 0; return 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment