linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: [PATCH 4/4 v2] firmware: stratix10-svc: Slightly simplify code
@ 2020-04-29 12:41 Markus Elfring
  0 siblings, 0 replies; 8+ messages in thread
From: Markus Elfring @ 2020-04-29 12:41 UTC (permalink / raw)
  To: Christophe Jaillet, Richard Gong
  Cc: kernel-janitors, linux-kernel, Alan Tull, Greg Kroah-Hartman,
	Moritz Fischer

> Replace 'devm_kmalloc_array(... | __GFP_ZERO)' with the equivalent and
> shorter 'devm_kcalloc(...)'.
>
> 'ctrl->genpool' can not be NULL, so axe a useless test in the remove
> function.

I would find it clearer to integrate also such small source code improvements
by separate patches.

Regards,
Markus

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

* Re: [PATCH 4/4 v2] firmware: stratix10-svc: Slightly simplify code
  2020-05-01 15:40   ` Richard Gong
  2020-05-01 15:48     ` Christophe JAILLET
@ 2020-05-06 10:04     ` Dan Carpenter
  1 sibling, 0 replies; 8+ messages in thread
From: Dan Carpenter @ 2020-05-06 10:04 UTC (permalink / raw)
  To: Richard Gong
  Cc: Christophe JAILLET, gregkh, atull, linux-kernel, kernel-janitors

On Fri, May 01, 2020 at 10:40:20AM -0500, Richard Gong wrote:
> Hi,
> 
> On 4/29/20 1:52 AM, Christophe JAILLET wrote:
> > Replace 'devm_kmalloc_array(... | __GFP_ZERO)' with the equivalent and
> > shorter 'devm_kcalloc(...)'.
> > 
> It doesn't make much sense.
> Actually devm_kcalloc returns devm_kmalloc_array(.., flag | __GFP_ZERO).
> 

devm_kcalloc() is better style and easier to read.  I was just reading
a bunch of AMD code that does this and I almost complained to them
that devm_kmalloc_array() doesn't zero the memory so they were freeing
uninitialized pointers.

regards,
dan carpenter


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

* Re: [PATCH 4/4 v2] firmware: stratix10-svc: Slightly simplify code
  2020-05-02  8:49         ` Christophe JAILLET
@ 2020-05-05 14:18           ` Richard Gong
  0 siblings, 0 replies; 8+ messages in thread
From: Richard Gong @ 2020-05-05 14:18 UTC (permalink / raw)
  To: Christophe JAILLET, gregkh, atull; +Cc: linux-kernel, kernel-janitors

Hi,

On 5/2/20 3:49 AM, Christophe JAILLET wrote:
> Le 01/05/2020 à 18:55, Richard Gong a écrit :
>> Hi,
>>
>> On 5/1/20 10:48 AM, Christophe JAILLET wrote:
>>> Le 01/05/2020 à 17:40, Richard Gong a écrit :
>>>> Hi,
>>>>
>>>> On 4/29/20 1:52 AM, Christophe JAILLET wrote:
>>>>> Replace 'devm_kmalloc_array(... | __GFP_ZERO)' with the equivalent and
>>>>> shorter 'devm_kcalloc(...)'.
>>>>>
>>>> It doesn't make much sense.
>>>> Actually devm_kcalloc returns devm_kmalloc_array(.., flag | 
>>>> __GFP_ZERO).
>>>>
>>> The only goal is to have a sightly less verbose code.
>>> This saves one line of code and there is no need to wonder why we 
>>> explicitly pass __GFP_ZERO to kmalloc_array.
>>>
>>> Mostly a matter of taste.
>> I prefer this part remain unchanged.
>>
> 
> The easiest would be just to ignore this patch entirely
Yes, please.
  but if you need
> a v3 for the series, could you tell me if you have any comments on the 3 
> other patches?
> 
I added some comments in your patch #3, also recommend putting all 
changes in one patch.

Regards,
Richard

> CJ
> 
> 
>> Regards,
>> Richard
>>
>>>
>>> 'devm_kcalloc' is inlined, so the binary should be exactly the same. >
>>> CJ
>>>
>>>>> 'ctrl->genpool' can not be NULL, so axe a useless test in the remove
>>>>> function.
>>>>>
>>>>> Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
>>>>> ---
>>>>>   drivers/firmware/stratix10-svc.c | 6 ++----
>>>>>   1 file changed, 2 insertions(+), 4 deletions(-)
>>>>>
>>>>> diff --git a/drivers/firmware/stratix10-svc.c 
>>>>> b/drivers/firmware/stratix10-svc.c
>>>>> index 739004398877..c228337cb0a1 100644
>>>>> --- a/drivers/firmware/stratix10-svc.c
>>>>> +++ b/drivers/firmware/stratix10-svc.c
>>>>> @@ -1002,8 +1002,7 @@ static int stratix10_svc_drv_probe(struct 
>>>>> platform_device *pdev)
>>>>>       if (!controller)
>>>>>           return -ENOMEM;
>>>>>   -    chans = devm_kmalloc_array(dev, SVC_NUM_CHANNEL,
>>>>> -                   sizeof(*chans), GFP_KERNEL | __GFP_ZERO);
>>>>> +    chans = devm_kcalloc(dev, SVC_NUM_CHANNEL, sizeof(*chans), 
>>>>> GFP_KERNEL);
>>>>>       if (!chans)
>>>>>           return -ENOMEM;
>>>>>   @@ -1086,8 +1085,7 @@ static int stratix10_svc_drv_remove(struct 
>>>>> platform_device *pdev)
>>>>>           kthread_stop(ctrl->task);
>>>>>           ctrl->task = NULL;
>>>>>       }
>>>>> -    if (ctrl->genpool)
>>>>> -        gen_pool_destroy(ctrl->genpool);
>>>>> +    gen_pool_destroy(ctrl->genpool);
>>>>>       list_del(&ctrl->node);
>>>>>         return 0;
>>>>>
>>>>
>>>> Regards,
>>>> Richard
>>>>
>>>
>>
> 

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

* Re: [PATCH 4/4 v2] firmware: stratix10-svc: Slightly simplify code
  2020-05-01 16:55       ` Richard Gong
@ 2020-05-02  8:49         ` Christophe JAILLET
  2020-05-05 14:18           ` Richard Gong
  0 siblings, 1 reply; 8+ messages in thread
From: Christophe JAILLET @ 2020-05-02  8:49 UTC (permalink / raw)
  To: Richard Gong, gregkh, atull; +Cc: linux-kernel, kernel-janitors

Le 01/05/2020 à 18:55, Richard Gong a écrit :
> Hi,
>
> On 5/1/20 10:48 AM, Christophe JAILLET wrote:
>> Le 01/05/2020 à 17:40, Richard Gong a écrit :
>>> Hi,
>>>
>>> On 4/29/20 1:52 AM, Christophe JAILLET wrote:
>>>> Replace 'devm_kmalloc_array(... | __GFP_ZERO)' with the equivalent and
>>>> shorter 'devm_kcalloc(...)'.
>>>>
>>> It doesn't make much sense.
>>> Actually devm_kcalloc returns devm_kmalloc_array(.., flag | 
>>> __GFP_ZERO).
>>>
>> The only goal is to have a sightly less verbose code.
>> This saves one line of code and there is no need to wonder why we 
>> explicitly pass __GFP_ZERO to kmalloc_array.
>>
>> Mostly a matter of taste.
> I prefer this part remain unchanged.
>

The easiest would be just to ignore this patch entirely but if you need 
a v3 for the series, could you tell me if you have any comments on the 3 
other patches?

CJ


> Regards,
> Richard
>
>>
>> 'devm_kcalloc' is inlined, so the binary should be exactly the same. >
>> CJ
>>
>>>> 'ctrl->genpool' can not be NULL, so axe a useless test in the remove
>>>> function.
>>>>
>>>> Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
>>>> ---
>>>>   drivers/firmware/stratix10-svc.c | 6 ++----
>>>>   1 file changed, 2 insertions(+), 4 deletions(-)
>>>>
>>>> diff --git a/drivers/firmware/stratix10-svc.c 
>>>> b/drivers/firmware/stratix10-svc.c
>>>> index 739004398877..c228337cb0a1 100644
>>>> --- a/drivers/firmware/stratix10-svc.c
>>>> +++ b/drivers/firmware/stratix10-svc.c
>>>> @@ -1002,8 +1002,7 @@ static int stratix10_svc_drv_probe(struct 
>>>> platform_device *pdev)
>>>>       if (!controller)
>>>>           return -ENOMEM;
>>>>   -    chans = devm_kmalloc_array(dev, SVC_NUM_CHANNEL,
>>>> -                   sizeof(*chans), GFP_KERNEL | __GFP_ZERO);
>>>> +    chans = devm_kcalloc(dev, SVC_NUM_CHANNEL, sizeof(*chans), 
>>>> GFP_KERNEL);
>>>>       if (!chans)
>>>>           return -ENOMEM;
>>>>   @@ -1086,8 +1085,7 @@ static int stratix10_svc_drv_remove(struct 
>>>> platform_device *pdev)
>>>>           kthread_stop(ctrl->task);
>>>>           ctrl->task = NULL;
>>>>       }
>>>> -    if (ctrl->genpool)
>>>> -        gen_pool_destroy(ctrl->genpool);
>>>> +    gen_pool_destroy(ctrl->genpool);
>>>>       list_del(&ctrl->node);
>>>>         return 0;
>>>>
>>>
>>> Regards,
>>> Richard
>>>
>>
>


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

* Re: [PATCH 4/4 v2] firmware: stratix10-svc: Slightly simplify code
  2020-05-01 15:48     ` Christophe JAILLET
@ 2020-05-01 16:55       ` Richard Gong
  2020-05-02  8:49         ` Christophe JAILLET
  0 siblings, 1 reply; 8+ messages in thread
From: Richard Gong @ 2020-05-01 16:55 UTC (permalink / raw)
  To: Christophe JAILLET, gregkh, atull; +Cc: linux-kernel, kernel-janitors

Hi,

On 5/1/20 10:48 AM, Christophe JAILLET wrote:
> Le 01/05/2020 à 17:40, Richard Gong a écrit :
>> Hi,
>>
>> On 4/29/20 1:52 AM, Christophe JAILLET wrote:
>>> Replace 'devm_kmalloc_array(... | __GFP_ZERO)' with the equivalent and
>>> shorter 'devm_kcalloc(...)'.
>>>
>> It doesn't make much sense.
>> Actually devm_kcalloc returns devm_kmalloc_array(.., flag | __GFP_ZERO).
>>
> The only goal is to have a sightly less verbose code.
> This saves one line of code and there is no need to wonder why we 
> explicitly pass __GFP_ZERO to kmalloc_array.
> 
> Mostly a matter of taste.
I prefer this part remain unchanged.

Regards,
Richard

> 
> 'devm_kcalloc' is inlined, so the binary should be exactly the same. >
> CJ
> 
>>> 'ctrl->genpool' can not be NULL, so axe a useless test in the remove
>>> function.
>>>
>>> Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
>>> ---
>>>   drivers/firmware/stratix10-svc.c | 6 ++----
>>>   1 file changed, 2 insertions(+), 4 deletions(-)
>>>
>>> diff --git a/drivers/firmware/stratix10-svc.c 
>>> b/drivers/firmware/stratix10-svc.c
>>> index 739004398877..c228337cb0a1 100644
>>> --- a/drivers/firmware/stratix10-svc.c
>>> +++ b/drivers/firmware/stratix10-svc.c
>>> @@ -1002,8 +1002,7 @@ static int stratix10_svc_drv_probe(struct 
>>> platform_device *pdev)
>>>       if (!controller)
>>>           return -ENOMEM;
>>>   -    chans = devm_kmalloc_array(dev, SVC_NUM_CHANNEL,
>>> -                   sizeof(*chans), GFP_KERNEL | __GFP_ZERO);
>>> +    chans = devm_kcalloc(dev, SVC_NUM_CHANNEL, sizeof(*chans), 
>>> GFP_KERNEL);
>>>       if (!chans)
>>>           return -ENOMEM;
>>>   @@ -1086,8 +1085,7 @@ static int stratix10_svc_drv_remove(struct 
>>> platform_device *pdev)
>>>           kthread_stop(ctrl->task);
>>>           ctrl->task = NULL;
>>>       }
>>> -    if (ctrl->genpool)
>>> -        gen_pool_destroy(ctrl->genpool);
>>> +    gen_pool_destroy(ctrl->genpool);
>>>       list_del(&ctrl->node);
>>>         return 0;
>>>
>>
>> Regards,
>> Richard
>>
> 

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

* Re: [PATCH 4/4 v2] firmware: stratix10-svc: Slightly simplify code
  2020-05-01 15:40   ` Richard Gong
@ 2020-05-01 15:48     ` Christophe JAILLET
  2020-05-01 16:55       ` Richard Gong
  2020-05-06 10:04     ` Dan Carpenter
  1 sibling, 1 reply; 8+ messages in thread
From: Christophe JAILLET @ 2020-05-01 15:48 UTC (permalink / raw)
  To: Richard Gong, gregkh, atull; +Cc: linux-kernel, kernel-janitors

Le 01/05/2020 à 17:40, Richard Gong a écrit :
> Hi,
>
> On 4/29/20 1:52 AM, Christophe JAILLET wrote:
>> Replace 'devm_kmalloc_array(... | __GFP_ZERO)' with the equivalent and
>> shorter 'devm_kcalloc(...)'.
>>
> It doesn't make much sense.
> Actually devm_kcalloc returns devm_kmalloc_array(.., flag | __GFP_ZERO).
>
The only goal is to have a sightly less verbose code.
This saves one line of code and there is no need to wonder why we 
explicitly pass __GFP_ZERO to kmalloc_array.

Mostly a matter of taste.

'devm_kcalloc' is inlined, so the binary should be exactly the same.

CJ

>> 'ctrl->genpool' can not be NULL, so axe a useless test in the remove
>> function.
>>
>> Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
>> ---
>>   drivers/firmware/stratix10-svc.c | 6 ++----
>>   1 file changed, 2 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/firmware/stratix10-svc.c 
>> b/drivers/firmware/stratix10-svc.c
>> index 739004398877..c228337cb0a1 100644
>> --- a/drivers/firmware/stratix10-svc.c
>> +++ b/drivers/firmware/stratix10-svc.c
>> @@ -1002,8 +1002,7 @@ static int stratix10_svc_drv_probe(struct 
>> platform_device *pdev)
>>       if (!controller)
>>           return -ENOMEM;
>>   -    chans = devm_kmalloc_array(dev, SVC_NUM_CHANNEL,
>> -                   sizeof(*chans), GFP_KERNEL | __GFP_ZERO);
>> +    chans = devm_kcalloc(dev, SVC_NUM_CHANNEL, sizeof(*chans), 
>> GFP_KERNEL);
>>       if (!chans)
>>           return -ENOMEM;
>>   @@ -1086,8 +1085,7 @@ static int stratix10_svc_drv_remove(struct 
>> platform_device *pdev)
>>           kthread_stop(ctrl->task);
>>           ctrl->task = NULL;
>>       }
>> -    if (ctrl->genpool)
>> -        gen_pool_destroy(ctrl->genpool);
>> +    gen_pool_destroy(ctrl->genpool);
>>       list_del(&ctrl->node);
>>         return 0;
>>
>
> Regards,
> Richard
>


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

* Re: [PATCH 4/4 v2] firmware: stratix10-svc: Slightly simplify code
  2020-04-29  6:52 ` [PATCH 4/4 v2] firmware: stratix10-svc: Slightly simplify code Christophe JAILLET
@ 2020-05-01 15:40   ` Richard Gong
  2020-05-01 15:48     ` Christophe JAILLET
  2020-05-06 10:04     ` Dan Carpenter
  0 siblings, 2 replies; 8+ messages in thread
From: Richard Gong @ 2020-05-01 15:40 UTC (permalink / raw)
  To: Christophe JAILLET, gregkh, atull; +Cc: linux-kernel, kernel-janitors

Hi,

On 4/29/20 1:52 AM, Christophe JAILLET wrote:
> Replace 'devm_kmalloc_array(... | __GFP_ZERO)' with the equivalent and
> shorter 'devm_kcalloc(...)'.
> 
It doesn't make much sense.
Actually devm_kcalloc returns devm_kmalloc_array(.., flag | __GFP_ZERO).

> 'ctrl->genpool' can not be NULL, so axe a useless test in the remove
> function.
> 
> Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
> ---
>   drivers/firmware/stratix10-svc.c | 6 ++----
>   1 file changed, 2 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/firmware/stratix10-svc.c b/drivers/firmware/stratix10-svc.c
> index 739004398877..c228337cb0a1 100644
> --- a/drivers/firmware/stratix10-svc.c
> +++ b/drivers/firmware/stratix10-svc.c
> @@ -1002,8 +1002,7 @@ static int stratix10_svc_drv_probe(struct platform_device *pdev)
>   	if (!controller)
>   		return -ENOMEM;
>   
> -	chans = devm_kmalloc_array(dev, SVC_NUM_CHANNEL,
> -				   sizeof(*chans), GFP_KERNEL | __GFP_ZERO);
> +	chans = devm_kcalloc(dev, SVC_NUM_CHANNEL, sizeof(*chans), GFP_KERNEL);
>   	if (!chans)
>   		return -ENOMEM;
>   
> @@ -1086,8 +1085,7 @@ static int stratix10_svc_drv_remove(struct platform_device *pdev)
>   		kthread_stop(ctrl->task);
>   		ctrl->task = NULL;
>   	}
> -	if (ctrl->genpool)
> -		gen_pool_destroy(ctrl->genpool);
> +	gen_pool_destroy(ctrl->genpool);
>   	list_del(&ctrl->node);
>   
>   	return 0;
> 

Regards,
Richard

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

* [PATCH 4/4 v2] firmware: stratix10-svc: Slightly simplify code
  2020-04-29  6:52 [PATCH 0/4 v2] firmware: stratix10-svc: Fix some error handling code Christophe JAILLET
@ 2020-04-29  6:52 ` Christophe JAILLET
  2020-05-01 15:40   ` Richard Gong
  0 siblings, 1 reply; 8+ messages in thread
From: Christophe JAILLET @ 2020-04-29  6:52 UTC (permalink / raw)
  To: richard.gong, gregkh, atull
  Cc: linux-kernel, kernel-janitors, Christophe JAILLET

Replace 'devm_kmalloc_array(... | __GFP_ZERO)' with the equivalent and
shorter 'devm_kcalloc(...)'.

'ctrl->genpool' can not be NULL, so axe a useless test in the remove
function.

Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
---
 drivers/firmware/stratix10-svc.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/firmware/stratix10-svc.c b/drivers/firmware/stratix10-svc.c
index 739004398877..c228337cb0a1 100644
--- a/drivers/firmware/stratix10-svc.c
+++ b/drivers/firmware/stratix10-svc.c
@@ -1002,8 +1002,7 @@ static int stratix10_svc_drv_probe(struct platform_device *pdev)
 	if (!controller)
 		return -ENOMEM;
 
-	chans = devm_kmalloc_array(dev, SVC_NUM_CHANNEL,
-				   sizeof(*chans), GFP_KERNEL | __GFP_ZERO);
+	chans = devm_kcalloc(dev, SVC_NUM_CHANNEL, sizeof(*chans), GFP_KERNEL);
 	if (!chans)
 		return -ENOMEM;
 
@@ -1086,8 +1085,7 @@ static int stratix10_svc_drv_remove(struct platform_device *pdev)
 		kthread_stop(ctrl->task);
 		ctrl->task = NULL;
 	}
-	if (ctrl->genpool)
-		gen_pool_destroy(ctrl->genpool);
+	gen_pool_destroy(ctrl->genpool);
 	list_del(&ctrl->node);
 
 	return 0;
-- 
2.25.1


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

end of thread, other threads:[~2020-05-06 10:05 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-29 12:41 [PATCH 4/4 v2] firmware: stratix10-svc: Slightly simplify code Markus Elfring
  -- strict thread matches above, loose matches on Subject: below --
2020-04-29  6:52 [PATCH 0/4 v2] firmware: stratix10-svc: Fix some error handling code Christophe JAILLET
2020-04-29  6:52 ` [PATCH 4/4 v2] firmware: stratix10-svc: Slightly simplify code Christophe JAILLET
2020-05-01 15:40   ` Richard Gong
2020-05-01 15:48     ` Christophe JAILLET
2020-05-01 16:55       ` Richard Gong
2020-05-02  8:49         ` Christophe JAILLET
2020-05-05 14:18           ` Richard Gong
2020-05-06 10:04     ` Dan Carpenter

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).