Эх сурвалжийг харах

staging: ft1000: Fix error goto statements.

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>
Marek Belisko 14 жил өмнө
parent
commit
e72115bce3

+ 3 - 3
drivers/staging/ft1000/ft1000-usb/ft1000_usb.c

@@ -178,7 +178,7 @@ static int ft1000_probe(struct usb_interface *interface,
 
 
 	if (IS_ERR(pft1000info->pPollThread)) {
 	if (IS_ERR(pft1000info->pPollThread)) {
 		ret = PTR_ERR(pft1000info->pPollThread);
 		ret = PTR_ERR(pft1000info->pPollThread);
-		goto err_thread;
+		goto err_load;
 	}
 	}
 
 
 	msleep(500);
 	msleep(500);
@@ -186,7 +186,7 @@ static int ft1000_probe(struct usb_interface *interface,
 	while (!pft1000info->CardReady) {
 	while (!pft1000info->CardReady) {
 		if (gPollingfailed) {
 		if (gPollingfailed) {
 			ret = -EIO;
 			ret = -EIO;
-			goto err_load;
+			goto err_thread;
 		}
 		}
 		msleep(100);
 		msleep(100);
 		DEBUG("ft1000_probe::Waiting for Card Ready\n");
 		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);
 	ret = reg_ft1000_netdev(ft1000dev, interface);
 	if (ret)
 	if (ret)
-		goto err_load;
+		goto err_thread;
 
 
 	pft1000info->NetDevRegDone = 1;
 	pft1000info->NetDevRegDone = 1;