2013-05-05 08:38:11

by Libo Chen

[permalink] [raw]
Subject: [PATCH] bestcomm: no need to free when kzalloc fail

From: Libo Chen <[email protected]>

There is no need to free bcom_eng if kzalloc fail

Signed-off-by: Libo Chen <[email protected]>
---
drivers/dma/bestcomm/bestcomm.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/dma/bestcomm/bestcomm.c b/drivers/dma/bestcomm/bestcomm.c
index a8c2e29..300ee2d 100644
--- a/drivers/dma/bestcomm/bestcomm.c
+++ b/drivers/dma/bestcomm/bestcomm.c
@@ -400,7 +400,7 @@ static int mpc52xx_bcom_probe(struct platform_device *op)
printk(KERN_ERR DRIVER_NAME ": "
"Can't allocate state structure\n");
rv = -ENOMEM;
- goto error_sramclean;
+ goto error_kzalloc;
}

/* Save the node */
@@ -449,6 +449,7 @@ error_release:
release_mem_region(res_bcom.start, sizeof(struct mpc52xx_sdma));
error_sramclean:
kfree(bcom_eng);
+error_kzalloc:
bcom_sram_cleanup();
error_ofput:
of_node_put(op->dev.of_node);
--
1.8.1.2


2013-05-22 04:50:30

by Libo Chen

[permalink] [raw]
Subject: Re: [PATCH] bestcomm: no need to free when kzalloc fail


ping...

On 2013/5/5 16:38, [email protected] wrote:
> From: Libo Chen <[email protected]>
>
> There is no need to free bcom_eng if kzalloc fail
>
> Signed-off-by: Libo Chen <[email protected]>
> ---
> drivers/dma/bestcomm/bestcomm.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/dma/bestcomm/bestcomm.c b/drivers/dma/bestcomm/bestcomm.c
> index a8c2e29..300ee2d 100644
> --- a/drivers/dma/bestcomm/bestcomm.c
> +++ b/drivers/dma/bestcomm/bestcomm.c
> @@ -400,7 +400,7 @@ static int mpc52xx_bcom_probe(struct platform_device *op)
> printk(KERN_ERR DRIVER_NAME ": "
> "Can't allocate state structure\n");
> rv = -ENOMEM;
> - goto error_sramclean;
> + goto error_kzalloc;
> }
>
> /* Save the node */
> @@ -449,6 +449,7 @@ error_release:
> release_mem_region(res_bcom.start, sizeof(struct mpc52xx_sdma));
> error_sramclean:
> kfree(bcom_eng);
> +error_kzalloc:
> bcom_sram_cleanup();
> error_ofput:
> of_node_put(op->dev.of_node);
>

2013-05-22 05:00:49

by Zefan Li

[permalink] [raw]
Subject: Re: [PATCH] bestcomm: no need to free when kzalloc fail

On 2013/5/22 12:49, Libo Chen wrote:
>
> ping...
>
> On 2013/5/5 16:38, [email protected] wrote:
>> From: Libo Chen <[email protected]>
>>
>> There is no need to free bcom_eng if kzalloc fail
>>

kfree(NULL) is fine. We gain nothing from this patch, and it even adds one
more line to the code, so just drop thi patch.

>> Signed-off-by: Libo Chen <[email protected]>
>> ---
>> drivers/dma/bestcomm/bestcomm.c | 3 ++-
>> 1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/dma/bestcomm/bestcomm.c b/drivers/dma/bestcomm/bestcomm.c
>> index a8c2e29..300ee2d 100644
>> --- a/drivers/dma/bestcomm/bestcomm.c
>> +++ b/drivers/dma/bestcomm/bestcomm.c
>> @@ -400,7 +400,7 @@ static int mpc52xx_bcom_probe(struct platform_device *op)
>> printk(KERN_ERR DRIVER_NAME ": "
>> "Can't allocate state structure\n");
>> rv = -ENOMEM;
>> - goto error_sramclean;
>> + goto error_kzalloc;
>> }
>>
>> /* Save the node */
>> @@ -449,6 +449,7 @@ error_release:
>> release_mem_region(res_bcom.start, sizeof(struct mpc52xx_sdma));
>> error_sramclean:
>> kfree(bcom_eng);
>> +error_kzalloc:
>> bcom_sram_cleanup();
>> error_ofput:
>> of_node_put(op->dev.of_node);
>>
>
>
> .
>

2013-05-22 06:05:10

by Libo Chen

[permalink] [raw]
Subject: Re: [PATCH] bestcomm: no need to free when kzalloc fail

On 2013/5/22 12:58, Li Zefan wrote:
> On 2013/5/22 12:49, Libo Chen wrote:
>>
>> ping...
>>
>> On 2013/5/5 16:38, [email protected] wrote:
>>> From: Libo Chen <[email protected]>
>>>
>>> There is no need to free bcom_eng if kzalloc fail
>>>
>
> kfree(NULL) is fine. We gain nothing from this patch, and it even adds one
> more line to the code, so just drop thi patch.
>

yes, no bad will happen


thanks,

Libo

>>> Signed-off-by: Libo Chen <[email protected]>
>>> ---
>>> drivers/dma/bestcomm/bestcomm.c | 3 ++-
>>> 1 file changed, 2 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/drivers/dma/bestcomm/bestcomm.c b/drivers/dma/bestcomm/bestcomm.c
>>> index a8c2e29..300ee2d 100644
>>> --- a/drivers/dma/bestcomm/bestcomm.c
>>> +++ b/drivers/dma/bestcomm/bestcomm.c
>>> @@ -400,7 +400,7 @@ static int mpc52xx_bcom_probe(struct platform_device *op)
>>> printk(KERN_ERR DRIVER_NAME ": "
>>> "Can't allocate state structure\n");
>>> rv = -ENOMEM;
>>> - goto error_sramclean;
>>> + goto error_kzalloc;
>>> }
>>>
>>> /* Save the node */
>>> @@ -449,6 +449,7 @@ error_release:
>>> release_mem_region(res_bcom.start, sizeof(struct mpc52xx_sdma));
>>> error_sramclean:
>>> kfree(bcom_eng);
>>> +error_kzalloc:
>>> bcom_sram_cleanup();
>>> error_ofput:
>>> of_node_put(op->dev.of_node);
>>>
>>
>>
>> .
>>
>
>
> .
>

2013-05-22 06:08:32

by Benjamin Herrenschmidt

[permalink] [raw]
Subject: Re: [PATCH] bestcomm: no need to free when kzalloc fail

On Wed, 2013-05-22 at 12:49 +0800, Libo Chen wrote:
> ping...

This is pointless. We routinely avoid adding such crap by having
the various free(...) routines cope with NULL. You just need to make
sure you are indeed NULL in the error case.

Ben.

> On 2013/5/5 16:38, [email protected] wrote:
> > From: Libo Chen <[email protected]>
> >
> > There is no need to free bcom_eng if kzalloc fail
> >
> > Signed-off-by: Libo Chen <[email protected]>
> > ---
> > drivers/dma/bestcomm/bestcomm.c | 3 ++-
> > 1 file changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/dma/bestcomm/bestcomm.c b/drivers/dma/bestcomm/bestcomm.c
> > index a8c2e29..300ee2d 100644
> > --- a/drivers/dma/bestcomm/bestcomm.c
> > +++ b/drivers/dma/bestcomm/bestcomm.c
> > @@ -400,7 +400,7 @@ static int mpc52xx_bcom_probe(struct platform_device *op)
> > printk(KERN_ERR DRIVER_NAME ": "
> > "Can't allocate state structure\n");
> > rv = -ENOMEM;
> > - goto error_sramclean;
> > + goto error_kzalloc;
> > }
> >
> > /* Save the node */
> > @@ -449,6 +449,7 @@ error_release:
> > release_mem_region(res_bcom.start, sizeof(struct mpc52xx_sdma));
> > error_sramclean:
> > kfree(bcom_eng);
> > +error_kzalloc:
> > bcom_sram_cleanup();
> > error_ofput:
> > of_node_put(op->dev.of_node);
> >
>

2013-05-22 06:38:20

by Libo Chen

[permalink] [raw]
Subject: Re: [PATCH] bestcomm: no need to free when kzalloc fail

On 2013/5/22 14:06, Benjamin Herrenschmidt wrote:
> On Wed, 2013-05-22 at 12:49 +0800, Libo Chen wrote:
>> ping...
>
> This is pointless. We routinely avoid adding such crap by having
> the various free(...) routines cope with NULL. You just need to make
> sure you are indeed NULL in the error case.
>
> Ben.

thanks,

Libo

>
>> On 2013/5/5 16:38, [email protected] wrote:
>>> From: Libo Chen <[email protected]>
>>>
>>> There is no need to free bcom_eng if kzalloc fail
>>>
>>> Signed-off-by: Libo Chen <[email protected]>
>>> ---
>>> drivers/dma/bestcomm/bestcomm.c | 3 ++-
>>> 1 file changed, 2 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/drivers/dma/bestcomm/bestcomm.c b/drivers/dma/bestcomm/bestcomm.c
>>> index a8c2e29..300ee2d 100644
>>> --- a/drivers/dma/bestcomm/bestcomm.c
>>> +++ b/drivers/dma/bestcomm/bestcomm.c
>>> @@ -400,7 +400,7 @@ static int mpc52xx_bcom_probe(struct platform_device *op)
>>> printk(KERN_ERR DRIVER_NAME ": "
>>> "Can't allocate state structure\n");
>>> rv = -ENOMEM;
>>> - goto error_sramclean;
>>> + goto error_kzalloc;
>>> }
>>>
>>> /* Save the node */
>>> @@ -449,6 +449,7 @@ error_release:
>>> release_mem_region(res_bcom.start, sizeof(struct mpc52xx_sdma));
>>> error_sramclean:
>>> kfree(bcom_eng);
>>> +error_kzalloc:
>>> bcom_sram_cleanup();
>>> error_ofput:
>>> of_node_put(op->dev.of_node);
>>>
>>
>
>
>
> .
>