diff options
author | Marek Belisko <marek.belisko@open-nandra.com> | 2010-12-09 16:13:49 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2010-12-09 16:35:13 -0800 |
commit | 1c46282421c8b31b37323f7b007c4562ce17578c (patch) | |
tree | bbea6229d897b305d071709faa5bae333907afe7 /drivers/staging/ft1000 | |
parent | 04c6620117488c0ccc612da5f2bcbcde025e9301 (diff) |
staging: ft1000: Use return value for ft1000InitProc.
Add checking for return value ft1000InitProc and cleanup
if something fail.
Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging/ft1000')
-rw-r--r-- | 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 7dfed41b02ac..0e1fc3f1e055 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: |