linux-staging.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
* [PATCH v3] staging: rtl8723bs: os_dep: simplify the return statement
@ 2021-10-14 14:40 Saurav Girepunje
  2021-10-14 14:49 ` Greg KH
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Saurav Girepunje @ 2021-10-14 14:40 UTC (permalink / raw)
  To: gregkh, fabioaiuto83, ross.schm.dev, marcocesati,
	saurav.girepunje, insafonov, linux-staging, linux-kernel
  Cc: saurav.girepunje

Remove goto statement where function simply return value without doing
any cleanup action.

Simplify the return using goto label to avoid unneeded 'if' condition
check.

Remove the unneeded and redundant check of variable on goto.

Remove the assignment of NULL on local variable.

Signed-off-by: Saurav Girepunje <saurav.girepunje@gmail.com>
---

ChangeLog V3:

	-Remove goto statement where function simply return value
	 without doing any cleanup action.
	-Remove the assignment of NULL on local variable.
	-Replace the goto statement added after the memcpy on V2.
	 with return 0 statement.

ChangeLog V2:

	-Add goto out after the memcpy for no error case return with
	 ret only. On V1 doing free, which was not required for no error
	 case.

ChangeLog V1:

	-Remove the unneeded and redundant check of variable on
	 goto out.
	-Simplify the return using goto label to avoid unneeded if
	 condition check.

 .../staging/rtl8723bs/os_dep/ioctl_cfg80211.c | 29 ++++++++-----------
 1 file changed, 12 insertions(+), 17 deletions(-)

diff --git a/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c b/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c
index 0868f56e2979..217b86bfb722 100644
--- a/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c
+++ b/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c
@@ -2281,19 +2281,16 @@ static int rtw_cfg80211_add_monitor_if(struct adapter *padapter, char *name, str
 	struct rtw_wdev_priv *pwdev_priv = adapter_wdev_data(padapter);

 	if (!name) {
-		ret = -EINVAL;
-		goto out;
+		return -EINVAL;
 	}

 	if (pwdev_priv->pmon_ndev) {
-		ret = -EBUSY;
-		goto out;
+		return -EBUSY;
 	}

 	mon_ndev = alloc_etherdev(sizeof(struct rtw_netdev_priv_indicator));
 	if (!mon_ndev) {
-		ret = -ENOMEM;
-		goto out;
+		return -ENOMEM;
 	}

 	mon_ndev->type = ARPHRD_IEEE80211_RADIOTAP;
@@ -2312,7 +2309,7 @@ static int rtw_cfg80211_add_monitor_if(struct adapter *padapter, char *name, str
 	mon_wdev = rtw_zmalloc(sizeof(struct wireless_dev));
 	if (!mon_wdev) {
 		ret = -ENOMEM;
-		goto out;
+		goto err_free_mon_ndev;
 	}

 	mon_wdev->wiphy = padapter->rtw_wdev->wiphy;
@@ -2322,22 +2319,20 @@ static int rtw_cfg80211_add_monitor_if(struct adapter *padapter, char *name, str

 	ret = cfg80211_register_netdevice(mon_ndev);
 	if (ret) {
-		goto out;
+		goto err_free_mon_wdev;
 	}

 	*ndev = pwdev_priv->pmon_ndev = mon_ndev;
 	memcpy(pwdev_priv->ifname_mon, name, IFNAMSIZ+1);

-out:
-	if (ret && mon_wdev) {
-		kfree(mon_wdev);
-		mon_wdev = NULL;
-	}
+	return 0;

-	if (ret && mon_ndev) {
-		free_netdev(mon_ndev);
-		*ndev = mon_ndev = NULL;
-	}
+err_free_mon_wdev:
+	kfree(mon_wdev);
+
+err_free_mon_ndev:
+	free_netdev(mon_ndev);
+	*ndev = NULL;

 	return ret;
 }
--
2.33.0


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v3] staging: rtl8723bs: os_dep: simplify the return statement
  2021-10-14 14:40 [PATCH v3] staging: rtl8723bs: os_dep: simplify the return statement Saurav Girepunje
@ 2021-10-14 14:49 ` Greg KH
  2021-10-22 17:11   ` Saurav Girepunje
  2021-10-14 14:57 ` Dan Carpenter
  2021-10-15  9:15 ` Fabio M. De Francesco
  2 siblings, 1 reply; 7+ messages in thread
From: Greg KH @ 2021-10-14 14:49 UTC (permalink / raw)
  To: Saurav Girepunje
  Cc: fabioaiuto83, ross.schm.dev, marcocesati, insafonov,
	linux-staging, linux-kernel, saurav.girepunje

On Thu, Oct 14, 2021 at 08:10:00PM +0530, Saurav Girepunje wrote:
> Remove goto statement where function simply return value without doing
> any cleanup action.
> 
> Simplify the return using goto label to avoid unneeded 'if' condition
> check.
> 
> Remove the unneeded and redundant check of variable on goto.
> 
> Remove the assignment of NULL on local variable.

You are saying _what_ you are doing here, but not _why_ you are doing
this.  For example, this last sentance does not make sense, why would
you want to do such a thing (hint, I know, but you need to explain it in
the changelog...)

It's getting better, but the changelog still needs work.  Often times
that's the hardest part of writing a kernel patch.

thanks,

greg k-h

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v3] staging: rtl8723bs: os_dep: simplify the return statement
  2021-10-14 14:40 [PATCH v3] staging: rtl8723bs: os_dep: simplify the return statement Saurav Girepunje
  2021-10-14 14:49 ` Greg KH
@ 2021-10-14 14:57 ` Dan Carpenter
  2021-10-22 17:14   ` Saurav Girepunje
  2021-10-15  9:15 ` Fabio M. De Francesco
  2 siblings, 1 reply; 7+ messages in thread
From: Dan Carpenter @ 2021-10-14 14:57 UTC (permalink / raw)
  To: Saurav Girepunje
  Cc: gregkh, fabioaiuto83, ross.schm.dev, marcocesati, insafonov,
	linux-staging, linux-kernel, saurav.girepunje

On Thu, Oct 14, 2021 at 08:10:00PM +0530, Saurav Girepunje wrote:
>  .../staging/rtl8723bs/os_dep/ioctl_cfg80211.c | 29 ++++++++-----------
>  1 file changed, 12 insertions(+), 17 deletions(-)
> 
> diff --git a/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c b/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c
> index 0868f56e2979..217b86bfb722 100644
> --- a/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c
> +++ b/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c
> @@ -2281,19 +2281,16 @@ static int rtw_cfg80211_add_monitor_if(struct adapter *padapter, char *name, str
>  	struct rtw_wdev_priv *pwdev_priv = adapter_wdev_data(padapter);
> 
>  	if (!name) {
> -		ret = -EINVAL;
> -		goto out;
> +		return -EINVAL;
>  	}

You need to delete the curly braces, otherwise your patch will introduce
a checkpatch warning.  Same below as well.

regards,
dan carpenter


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v3] staging: rtl8723bs: os_dep: simplify the return statement
  2021-10-14 14:40 [PATCH v3] staging: rtl8723bs: os_dep: simplify the return statement Saurav Girepunje
  2021-10-14 14:49 ` Greg KH
  2021-10-14 14:57 ` Dan Carpenter
@ 2021-10-15  9:15 ` Fabio M. De Francesco
  2021-10-22 17:18   ` Saurav Girepunje
  2 siblings, 1 reply; 7+ messages in thread
From: Fabio M. De Francesco @ 2021-10-15  9:15 UTC (permalink / raw)
  To: gregkh, fabioaiuto83, ross.schm.dev, marcocesati,
	saurav.girepunje, insafonov, linux-staging, linux-kernel,
	Saurav Girepunje
  Cc: saurav.girepunje

On Thursday, October 14, 2021 4:40:00 PM CEST Saurav Girepunje wrote:
> Remove goto statement where function simply return value without doing
> any cleanup action.
> 
> Simplify the return using goto label to avoid unneeded 'if' condition
> check.
> 
> Remove the unneeded and redundant check of variable on goto.
> 
> Remove the assignment of NULL on local variable.
> 
> Signed-off-by: Saurav Girepunje <saurav.girepunje@gmail.com>
> ---
> 
> ChangeLog V3:
> 
> 	-Remove goto statement where function simply return value
> 	 without doing any cleanup action.
> 	-Remove the assignment of NULL on local variable.
> 	-Replace the goto statement added after the memcpy on V2.
> 	 with return 0 statement.
> 
> ChangeLog V2:
> 
> 	-Add goto out after the memcpy for no error case return with
> 	 ret only. On V1 doing free, which was not required for no error
> 	 case.

You still don't explain why you changed v1. You had freed resources on 
success path. That was not allowed because you introduced a change in the 
logic and a huge bug. Therefore, in v2, you are not merely changing something 
that "was not required". Instead you are changing something that is not 
permitted.

Thanks,

Fabio




^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v3] staging: rtl8723bs: os_dep: simplify the return statement
  2021-10-14 14:49 ` Greg KH
@ 2021-10-22 17:11   ` Saurav Girepunje
  0 siblings, 0 replies; 7+ messages in thread
From: Saurav Girepunje @ 2021-10-22 17:11 UTC (permalink / raw)
  To: Greg KH
  Cc: fabioaiuto83, ross.schm.dev, marcocesati, insafonov,
	linux-staging, linux-kernel, saurav.girepunje



On 14/10/21 8:19 pm, Greg KH wrote:
> On Thu, Oct 14, 2021 at 08:10:00PM +0530, Saurav Girepunje wrote:
>> Remove goto statement where function simply return value without doing
>> any cleanup action.
>>
>> Simplify the return using goto label to avoid unneeded 'if' condition
>> check.
>>
>> Remove the unneeded and redundant check of variable on goto.
>>
>> Remove the assignment of NULL on local variable.
> 
> You are saying _what_ you are doing here, but not _why_ you are doing
> this.  For example, this last sentance does not make sense, why would
> you want to do such a thing (hint, I know, but you need to explain it in
> the changelog...)
> 
> It's getting better, but the changelog still needs work.  Often times
> that's the hardest part of writing a kernel patch.
> 
> thanks,
> 
> greg k-h
> 

Thanks Greg for review. I will work on changelog and will send v4.

Regards,
Saurav 

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v3] staging: rtl8723bs: os_dep: simplify the return statement
  2021-10-14 14:57 ` Dan Carpenter
@ 2021-10-22 17:14   ` Saurav Girepunje
  0 siblings, 0 replies; 7+ messages in thread
From: Saurav Girepunje @ 2021-10-22 17:14 UTC (permalink / raw)
  To: Dan Carpenter
  Cc: gregkh, fabioaiuto83, ross.schm.dev, marcocesati, insafonov,
	linux-staging, linux-kernel, saurav.girepunje



On 14/10/21 8:27 pm, Dan Carpenter wrote:
> On Thu, Oct 14, 2021 at 08:10:00PM +0530, Saurav Girepunje wrote:
>>  .../staging/rtl8723bs/os_dep/ioctl_cfg80211.c | 29 ++++++++-----------
>>  1 file changed, 12 insertions(+), 17 deletions(-)
>>
>> diff --git a/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c b/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c
>> index 0868f56e2979..217b86bfb722 100644
>> --- a/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c
>> +++ b/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c
>> @@ -2281,19 +2281,16 @@ static int rtw_cfg80211_add_monitor_if(struct adapter *padapter, char *name, str
>>  	struct rtw_wdev_priv *pwdev_priv = adapter_wdev_data(padapter);
>>
>>  	if (!name) {
>> -		ret = -EINVAL;
>> -		goto out;
>> +		return -EINVAL;
>>  	}
> 
> You need to delete the curly braces, otherwise your patch will introduce
> a checkpatch warning.  Same below as well.
> 
> regards,
> dan carpenter
> 

Ok, I will update patch for this and will send another version.
Thanks Dan for reviewing the patch.

Regards,
Saurav  

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v3] staging: rtl8723bs: os_dep: simplify the return statement
  2021-10-15  9:15 ` Fabio M. De Francesco
@ 2021-10-22 17:18   ` Saurav Girepunje
  0 siblings, 0 replies; 7+ messages in thread
From: Saurav Girepunje @ 2021-10-22 17:18 UTC (permalink / raw)
  To: Fabio M. De Francesco, gregkh, fabioaiuto83, ross.schm.dev,
	marcocesati, insafonov, linux-staging, linux-kernel
  Cc: saurav.girepunje



On 15/10/21 2:45 pm, Fabio M. De Francesco wrote:
> On Thursday, October 14, 2021 4:40:00 PM CEST Saurav Girepunje wrote:
>> Remove goto statement where function simply return value without doing
>> any cleanup action.
>>
>> Simplify the return using goto label to avoid unneeded 'if' condition
>> check.
>>
>> Remove the unneeded and redundant check of variable on goto.
>>
>> Remove the assignment of NULL on local variable.
>>
>> Signed-off-by: Saurav Girepunje <saurav.girepunje@gmail.com>
>> ---
>>
>> ChangeLog V3:
>>
>> 	-Remove goto statement where function simply return value
>> 	 without doing any cleanup action.
>> 	-Remove the assignment of NULL on local variable.
>> 	-Replace the goto statement added after the memcpy on V2.
>> 	 with return 0 statement.
>>
>> ChangeLog V2:
>>
>> 	-Add goto out after the memcpy for no error case return with
>> 	 ret only. On V1 doing free, which was not required for no error
>> 	 case.
> 
> You still don't explain why you changed v1. You had freed resources on 
> success path. 
"On V1 doing free" I will add more information on changelog.
That was not allowed because you introduced a change in the 
> logic and a huge bug. Therefore, in v2, you are not merely changing something 
> that "was not required". Instead you are changing something that is not 
> permitted.
> 
> Thanks,
> 
> Fabio
> 
> 
> 
Thanks Fabio for review.

Regards,
Saurav

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2021-10-22 17:18 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-14 14:40 [PATCH v3] staging: rtl8723bs: os_dep: simplify the return statement Saurav Girepunje
2021-10-14 14:49 ` Greg KH
2021-10-22 17:11   ` Saurav Girepunje
2021-10-14 14:57 ` Dan Carpenter
2021-10-22 17:14   ` Saurav Girepunje
2021-10-15  9:15 ` Fabio M. De Francesco
2021-10-22 17:18   ` Saurav Girepunje

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).