Re: [PATCH v2] staging: r8188eu: keep the success path and error path separate

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

 



Hi Vihas,

On 2/9/22 22:07, Vihas Makwana wrote:
Keep the success path and error path separate in rtw_usb_if1_init() and
drop the "status" variable.
Also, remove do-nothing gotos.

Signed-off-by: Vihas Makwana <makvihas@xxxxxxxxx>
---

Looks good, thanks

Reviewed-by: Pavel Skripkin <paskripkin@xxxxxxxxx>

v1->v2:
     Just `return NULL` instead of `padapter=NULL/return padapter`
  drivers/staging/r8188eu/os_dep/usb_intf.c | 30 +++++++++--------------
  1 file changed, 12 insertions(+), 18 deletions(-)

diff --git a/drivers/staging/r8188eu/os_dep/usb_intf.c b/drivers/staging/r8188eu/os_dep/usb_intf.c
index 10c33e2ae..668e79a3c 100644
--- a/drivers/staging/r8188eu/os_dep/usb_intf.c
+++ b/drivers/staging/r8188eu/os_dep/usb_intf.c
@@ -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)


With regards,
Pavel Skripkin




[Index of Archives]     [Linux Driver Development]     [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