staging: ft1000: Fix error goto statements.
authorMarek Belisko <marek.belisko@gmail.com>
Fri, 12 Nov 2010 09:27:44 +0000 (10:27 +0100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 16 Nov 2010 19:31:21 +0000 (11:31 -0800)
With commit 2dab1ac81b4767095f96503a9ac093a68c6e9c95 there
was intruduced error which lead to stopping uninitialized
kthread which leads to kernel panics.

This patch fix problems with common entry point in correct
way.

Signed-off-by: Marek Belisko <marek.belisko@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/staging/ft1000/ft1000-usb/ft1000_usb.c

index 99e3339..6925622 100644 (file)
@@ -178,7 +178,7 @@ static int ft1000_probe(struct usb_interface *interface,
 
        if (IS_ERR(pft1000info->pPollThread)) {
                ret = PTR_ERR(pft1000info->pPollThread);
-               goto err_thread;
+               goto err_load;
        }
 
        msleep(500);
@@ -186,7 +186,7 @@ static int ft1000_probe(struct usb_interface *interface,
        while (!pft1000info->CardReady) {
                if (gPollingfailed) {
                        ret = -EIO;
-                       goto err_load;
+                       goto err_thread;
                }
                msleep(100);
                DEBUG("ft1000_probe::Waiting for Card Ready\n");
@@ -196,7 +196,7 @@ static int ft1000_probe(struct usb_interface *interface,
 
        ret = reg_ft1000_netdev(ft1000dev, interface);
        if (ret)
-               goto err_load;
+               goto err_thread;
 
        pft1000info->NetDevRegDone = 1;