]> bbs.cooldavid.org Git - net-next-2.6.git/commitdiff
staging: rtl8192su: check whether requests succeeded
authorKulikov Vasiliy <segooon@gmail.com>
Fri, 30 Jul 2010 11:09:02 +0000 (15:09 +0400)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 3 Aug 2010 01:23:45 +0000 (18:23 -0700)
rtl8192_usb_probe() does not check alloc_ieee80211() and
register_netdev() return values for errors.

Signed-off-by: Kulikov Vasiliy <segooon@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/staging/rtl8192su/r8192U_core.c

index 90ab1aa5f8a0dc0d81e0d95d183731d2811ae280..fcd05304b47085b1d940dcad603d87dc81ce3f0e 100644 (file)
@@ -7380,6 +7380,8 @@ static int __devinit rtl8192_usb_probe(struct usb_interface *intf,
         RT_TRACE(COMP_INIT, "Oops: i'm coming\n");
 
        dev = alloc_ieee80211(sizeof(struct r8192_priv));
+       if (dev == NULL)
+               return -ENOMEM;
 
        usb_set_intfdata(intf, dev);
        SET_NETDEV_DEV(dev, &intf->dev);
@@ -7417,7 +7419,8 @@ static int __devinit rtl8192_usb_probe(struct usb_interface *intf,
        netif_carrier_off(dev);
        netif_stop_queue(dev);
 
-       register_netdev(dev);
+       if (register_netdev(dev))
+               goto fail;
        RT_TRACE(COMP_INIT, "dev name=======> %s\n",dev->name);
        rtl8192_proc_init_one(dev);