staging: r8188eu: keep the success path and error path separate
authorVihas Makwana <makvihas@gmail.com>
Wed, 9 Feb 2022 19:07:53 +0000 (00:37 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 15 Feb 2022 16:07:33 +0000 (17:07 +0100)
Keep the success path and error path separate in rtw_usb_if1_init() and
drop the "status" variable.
Also, remove do-nothing gotos.

Reviewed-by: Pavel Skripkin <paskripkin@gmail.com>
Reviewed-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Vihas Makwana <makvihas@gmail.com>
Link: https://lore.kernel.org/r/20220209190752.7232-1-makvihas@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/r8188eu/os_dep/usb_intf.c

index 10c33e2ae3bc103291e49cfe10d0c5888e5a7eae..668e79a3c70e67b35b52ddd63d3b79cf1f4cd6df 100644 (file)
@@ -336,13 +336,13 @@ static struct adapter *rtw_usb_if1_init(struct dvobj_priv *dvobj,
 {
        struct adapter *padapter = NULL;
        struct net_device *pnetdev = NULL;
-       int status = _FAIL;
        struct io_priv *piopriv;
        struct intf_hdl *pintf;
 
        padapter = vzalloc(sizeof(*padapter));
        if (!padapter)
-               goto exit;
+               return NULL;
+
        padapter->dvobj = dvobj;
        dvobj->if1 = padapter;
 
@@ -421,26 +421,20 @@ static struct adapter *rtw_usb_if1_init(struct dvobj_priv *dvobj,
                , padapter->hw_init_completed
        );
 
-       status = _SUCCESS;
+       return padapter;
 
 free_drv_sw:
-       if (status != _SUCCESS) {
-               rtw_cancel_all_timer(padapter);
-               rtw_free_drv_sw(padapter);
-       }
+       rtw_cancel_all_timer(padapter);
+       rtw_free_drv_sw(padapter);
 handle_dualmac:
-       if (status != _SUCCESS)
-               rtw_handle_dualmac(padapter, 0);
+       rtw_handle_dualmac(padapter, 0);
 free_adapter:
-       if (status != _SUCCESS) {
-               if (pnetdev)
-                       rtw_free_netdev(pnetdev);
-               else if (padapter)
-                       vfree(padapter);
-               padapter = NULL;
-       }
-exit:
-       return padapter;
+       if (pnetdev)
+               rtw_free_netdev(pnetdev);
+       else if (padapter)
+               vfree(padapter);
+
+       return NULL;
 }
 
 static void rtw_usb_if1_deinit(struct adapter *if1)