[PATCH 3/8] staging: ft1000: Use return value for ft1000InitProc.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Add checking for return value ft1000InitProc and cleanup
if something fail.

Signed-off-by: Marek Belisko <marek.belisko@xxxxxxxxxxxxxxx>
---
 drivers/staging/ft1000/ft1000-usb/ft1000_usb.c |    9 +++++++--
 1 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/ft1000/ft1000-usb/ft1000_usb.c b/drivers/staging/ft1000/ft1000-usb/ft1000_usb.c
index 7dfed41..0e1fc3f 100644
--- a/drivers/staging/ft1000/ft1000-usb/ft1000_usb.c
+++ b/drivers/staging/ft1000/ft1000-usb/ft1000_usb.c
@@ -198,12 +198,17 @@ static int ft1000_probe(struct usb_interface *interface,
 	if (ret)
 		goto err_thread;
 
-	pft1000info->NetDevRegDone = 1;
+	ret = ft1000InitProc(ft1000dev->net);
+	if (ret)
+		goto err_proc;
 
-	ft1000InitProc(ft1000dev->net);
+	pft1000info->NetDevRegDone = 1;
 
 	return 0;
 
+err_proc:
+	unregister_netdev(ft1000dev->net);
+	free_netdev(ft1000dev->net);
 err_thread:
 	kthread_stop(pft1000info->pPollThread);
 err_load:
-- 
1.7.1

_______________________________________________
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxx
http://driverdev.linuxdriverproject.org/mailman/listinfo/devel


[Index of Archives]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux