[PATCH] staging: ft100: Create common return point.

Marek Belisko marek.belisko at gmail.com
Wed Nov 10 09:04:30 UTC 2010


When reg_ft1000_netdev() fails created kthread isn't stopped.
So add return point for stopping thread.

Signed-off-by: Marek Belisko <marek.belisko at gmail.com>
---
 drivers/staging/ft1000/ft1000-usb/ft1000_usb.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/staging/ft1000/ft1000-usb/ft1000_usb.c b/drivers/staging/ft1000/ft1000-usb/ft1000_usb.c
index dcbc97c..99e3339 100644
--- a/drivers/staging/ft1000/ft1000-usb/ft1000_usb.c
+++ b/drivers/staging/ft1000/ft1000-usb/ft1000_usb.c
@@ -178,15 +178,13 @@ static int ft1000_probe(struct usb_interface *interface,
 
 	if (IS_ERR(pft1000info->pPollThread)) {
 		ret = PTR_ERR(pft1000info->pPollThread);
-		goto err_load;
+		goto err_thread;
 	}
 
 	msleep(500);
 
 	while (!pft1000info->CardReady) {
 		if (gPollingfailed) {
-			if (pft1000info->pPollThread)
-				kthread_stop(pft1000info->pPollThread);
 			ret = -EIO;
 			goto err_load;
 		}
@@ -207,6 +205,8 @@ static int ft1000_probe(struct usb_interface *interface,
 	return 0;
 
 err_load:
+	kthread_stop(pft1000info->pPollThread);
+err_thread:
 	kfree(pFileStart);
 err_fw:
 	kfree(ft1000dev);
-- 
1.7.1




More information about the devel mailing list