Skip to content

Commit

Permalink
Staging: wlan-ng: p80211netdev.c fix netdev alloc to prevent oops on …
Browse files Browse the repository at this point in the history
…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: Richard Kennedy <richard@rsk.demon.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  • Loading branch information
Richard Kennedy authored and Greg Kroah-Hartman committed Jan 6, 2009
1 parent 56afef5 commit ee31352
Showing 1 changed file with 4 additions and 12 deletions.
16 changes: 4 additions & 12 deletions drivers/staging/wlan-ng/p80211netdev.c
Original file line number Diff line number Diff line change
Expand Up @@ -814,13 +814,11 @@ int wlan_setup(wlandevice_t *wlandev)
(unsigned long)wlandev);

/* Allocate and initialize the struct device */
dev = kmalloc(sizeof(netdevice_t), GFP_ATOMIC);
dev = alloc_netdev(0,"wlan%d",ether_setup);
if ( dev == NULL ) {
WLAN_LOG_ERROR("Failed to alloc netdev.\n");
result = 1;
} else {
memset( dev, 0, sizeof(netdevice_t));
ether_setup(dev);
wlandev->netdev = dev;
dev->ml_priv = wlandev;
dev->hard_start_xmit = p80211knetdev_hard_start_xmit;
Expand Down Expand Up @@ -927,15 +925,9 @@ int register_wlandev(wlandevice_t *wlandev)

DBFENTER;

i = dev_alloc_name(wlandev->netdev, "wlan%d");
if (i >= 0) {
i = register_netdev(wlandev->netdev);
}
if (i != 0) {
return -EIO;
}

strcpy(wlandev->name, dev->name);
i = register_netdev(wlandev->netdev);
if (i)
return i;

DBFEXIT;
return 0;
Expand Down

0 comments on commit ee31352

Please sign in to comment.