Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1404294 > unrolled thread

[PATCH 1/2] staging: dgnc: remove redundant NULL check for brd

Started byDaeseok Youn <daeseok.youn@gmail.com>
First post2016-05-20 12:00 +0200
Last post2016-05-27 03:40 +0200
Articles 5 — 3 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH 1/2] staging: dgnc: remove redundant NULL check for brd Daeseok Youn <daeseok.youn@gmail.com> - 2016-05-20 12:00 +0200
    Re: [PATCH 1/2] staging: dgnc: remove redundant NULL check for brd Luis de Bethencourt <luisbg@osg.samsung.com> - 2016-05-25 23:50 +0200
      Re: [PATCH 1/2] staging: dgnc: remove redundant NULL check for brd DaeSeok Youn <daeseok.youn@gmail.com> - 2016-05-26 07:00 +0200
        Re: [PATCH 1/2] staging: dgnc: remove redundant NULL check for brd Luis de Bethencourt <luisbg@osg.samsung.com> - 2016-05-26 14:30 +0200
          Re: [PATCH 1/2] staging: dgnc: remove redundant NULL check for brd DaeSeok Youn <daeseok.youn@gmail.com> - 2016-05-27 03:40 +0200

#1404294 — [PATCH 1/2] staging: dgnc: remove redundant NULL check for brd

FromDaeseok Youn <daeseok.youn@gmail.com>
Date2016-05-20 12:00 +0200
Subject[PATCH 1/2] staging: dgnc: remove redundant NULL check for brd
Message-ID<rAPnP-3SW-13@gated-at.bofh.it>
the "brd" value cannot be NULL in dgnc_finalize_board_init().
Because "brd" as a parameter of this function was already
checked for NULL.

Signed-off-by: Daeseok Youn <daeseok.youn@gmail.com>
---
 drivers/staging/dgnc/dgnc_driver.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/drivers/staging/dgnc/dgnc_driver.c b/drivers/staging/dgnc/dgnc_driver.c
index af2e835..22257d2 100644
--- a/drivers/staging/dgnc/dgnc_driver.c
+++ b/drivers/staging/dgnc/dgnc_driver.c
@@ -579,9 +579,6 @@ static int dgnc_finalize_board_init(struct dgnc_board *brd)
 {
 	int rc = 0;
 
-	if (!brd || brd->magic != DGNC_BOARD_MAGIC)
-		return -ENODEV;
-
 	if (brd->irq) {
 		rc = request_irq(brd->irq, brd->bd_ops->intr,
 				 IRQF_SHARED, "DGNC", brd);
-- 
1.9.1

[toc] | [next] | [standalone]


#1407246

FromLuis de Bethencourt <luisbg@osg.samsung.com>
Date2016-05-25 23:50 +0200
Message-ID<rCOQG-63i-45@gated-at.bofh.it>
In reply to#1404294
On 20/05/16 10:51, Daeseok Youn wrote:
> the "brd" value cannot be NULL in dgnc_finalize_board_init().
> Because "brd" as a parameter of this function was already
> checked for NULL.
> 
> Signed-off-by: Daeseok Youn <daeseok.youn@gmail.com>
> ---
>  drivers/staging/dgnc/dgnc_driver.c | 3 ---
>  1 file changed, 3 deletions(-)
> 
> diff --git a/drivers/staging/dgnc/dgnc_driver.c b/drivers/staging/dgnc/dgnc_driver.c
> index af2e835..22257d2 100644
> --- a/drivers/staging/dgnc/dgnc_driver.c
> +++ b/drivers/staging/dgnc/dgnc_driver.c
> @@ -579,9 +579,6 @@ static int dgnc_finalize_board_init(struct dgnc_board *brd)
>  {
>  	int rc = 0;
>  
> -	if (!brd || brd->magic != DGNC_BOARD_MAGIC)
> -		return -ENODEV;
> -
>  	if (brd->irq) {
>  		rc = request_irq(brd->irq, brd->bd_ops->intr,
>  				 IRQF_SHARED, "DGNC", brd);
> 

This is partially correct, the check for brd being NULL is in line 371.

But there is a second check for brd->magic != DGNC_BOARD_MAGIC. Do you want
to keep that one?

Also, how did you find this patch. It is useful to mention this in the commit
message if it was through some static analysis tool. For people using these tools
in the future.

Thanks for the patch :)
Luis

[toc] | [prev] | [next] | [standalone]


#1407386

FromDaeSeok Youn <daeseok.youn@gmail.com>
Date2016-05-26 07:00 +0200
Message-ID<rCVyO-1Pn-7@gated-at.bofh.it>
In reply to#1407246
2016-05-26 6:48 GMT+09:00 Luis de Bethencourt <luisbg@osg.samsung.com>:
> On 20/05/16 10:51, Daeseok Youn wrote:
>> the "brd" value cannot be NULL in dgnc_finalize_board_init().
>> Because "brd" as a parameter of this function was already
>> checked for NULL.
>>
>> Signed-off-by: Daeseok Youn <daeseok.youn@gmail.com>
>> ---
>>  drivers/staging/dgnc/dgnc_driver.c | 3 ---
>>  1 file changed, 3 deletions(-)
>>
>> diff --git a/drivers/staging/dgnc/dgnc_driver.c b/drivers/staging/dgnc/dgnc_driver.c
>> index af2e835..22257d2 100644
>> --- a/drivers/staging/dgnc/dgnc_driver.c
>> +++ b/drivers/staging/dgnc/dgnc_driver.c
>> @@ -579,9 +579,6 @@ static int dgnc_finalize_board_init(struct dgnc_board *brd)
>>  {
>>       int rc = 0;
>>
>> -     if (!brd || brd->magic != DGNC_BOARD_MAGIC)
>> -             return -ENODEV;
>> -
>>       if (brd->irq) {
>>               rc = request_irq(brd->irq, brd->bd_ops->intr,
>>                                IRQF_SHARED, "DGNC", brd);
>>
>
> This is partially correct, the check for brd being NULL is in line 371.
Hi Luis,

Yes, right. but also brd was assigned the value DGNC_BOARD_MAGIC in line 384.
brd->magic = DGNC_BOARD_MAGIC;
and also dgnc_finalize_board_init() as a static function is only
called in dgnc_found_board(), right?

>
> But there is a second check for brd->magic != DGNC_BOARD_MAGIC. Do you want
> to keep that one?
So.. I think it doesn't need to check about DGNC_BOARD_MAGIC.

>
> Also, how did you find this patch. It is useful to mention this in the commit
> message if it was through some static analysis tool. For people using these tools
> in the future.
There are some static analysis tool for checking linux kernel code.
But I didn't use
those tools for this patch. sometimes, I usually run "smatch" tool for
checking linux kernel
code.

thanks.
regards,
Daeseok.

>
> Thanks for the patch :)
> Luis

[toc] | [prev] | [next] | [standalone]


#1407540

FromLuis de Bethencourt <luisbg@osg.samsung.com>
Date2016-05-26 14:30 +0200
Message-ID<rD2Ah-6nM-5@gated-at.bofh.it>
In reply to#1407386
On 26/05/16 05:56, DaeSeok Youn wrote:
> 2016-05-26 6:48 GMT+09:00 Luis de Bethencourt <luisbg@osg.samsung.com>:
>> On 20/05/16 10:51, Daeseok Youn wrote:
>>> the "brd" value cannot be NULL in dgnc_finalize_board_init().
>>> Because "brd" as a parameter of this function was already
>>> checked for NULL.
>>>
>>> Signed-off-by: Daeseok Youn <daeseok.youn@gmail.com>
>>> ---
>>>  drivers/staging/dgnc/dgnc_driver.c | 3 ---
>>>  1 file changed, 3 deletions(-)
>>>
>>> diff --git a/drivers/staging/dgnc/dgnc_driver.c b/drivers/staging/dgnc/dgnc_driver.c
>>> index af2e835..22257d2 100644
>>> --- a/drivers/staging/dgnc/dgnc_driver.c
>>> +++ b/drivers/staging/dgnc/dgnc_driver.c
>>> @@ -579,9 +579,6 @@ static int dgnc_finalize_board_init(struct dgnc_board *brd)
>>>  {
>>>       int rc = 0;
>>>
>>> -     if (!brd || brd->magic != DGNC_BOARD_MAGIC)
>>> -             return -ENODEV;
>>> -
>>>       if (brd->irq) {
>>>               rc = request_irq(brd->irq, brd->bd_ops->intr,
>>>                                IRQF_SHARED, "DGNC", brd);
>>>
>>
>> This is partially correct, the check for brd being NULL is in line 371.
> Hi Luis,
> 
> Yes, right. but also brd was assigned the value DGNC_BOARD_MAGIC in line 384.
> brd->magic = DGNC_BOARD_MAGIC;
> and also dgnc_finalize_board_init() as a static function is only
> called in dgnc_found_board(), right?
> 
>>
>> But there is a second check for brd->magic != DGNC_BOARD_MAGIC. Do you want
>> to keep that one?
> So.. I think it doesn't need to check about DGNC_BOARD_MAGIC.

This is good. I was asking just to make sure it was your intention.

Please add the reason to drop that second check in the commit message as well. So people
reading the git log can understand both parts. For both patches.

Thanks for the fixes :)

Luis

> 
>>
>> Also, how did you find this patch. It is useful to mention this in the commit
>> message if it was through some static analysis tool. For people using these tools
>> in the future.
> There are some static analysis tool for checking linux kernel code.
> But I didn't use
> those tools for this patch. sometimes, I usually run "smatch" tool for
> checking linux kernel
> code.
> 
> thanks.
> regards,
> Daeseok.
> 
>>
>> Thanks for the patch :)
>> Luis

[toc] | [prev] | [next] | [standalone]


#1407769

FromDaeSeok Youn <daeseok.youn@gmail.com>
Date2016-05-27 03:40 +0200
Message-ID<rDeUN-5lZ-5@gated-at.bofh.it>
In reply to#1407540
2016-05-26 21:29 GMT+09:00 Luis de Bethencourt <luisbg@osg.samsung.com>:
> On 26/05/16 05:56, DaeSeok Youn wrote:
>> 2016-05-26 6:48 GMT+09:00 Luis de Bethencourt <luisbg@osg.samsung.com>:
>>> On 20/05/16 10:51, Daeseok Youn wrote:
>>>> the "brd" value cannot be NULL in dgnc_finalize_board_init().
>>>> Because "brd" as a parameter of this function was already
>>>> checked for NULL.
>>>>
>>>> Signed-off-by: Daeseok Youn <daeseok.youn@gmail.com>
>>>> ---
>>>>  drivers/staging/dgnc/dgnc_driver.c | 3 ---
>>>>  1 file changed, 3 deletions(-)
>>>>
>>>> diff --git a/drivers/staging/dgnc/dgnc_driver.c b/drivers/staging/dgnc/dgnc_driver.c
>>>> index af2e835..22257d2 100644
>>>> --- a/drivers/staging/dgnc/dgnc_driver.c
>>>> +++ b/drivers/staging/dgnc/dgnc_driver.c
>>>> @@ -579,9 +579,6 @@ static int dgnc_finalize_board_init(struct dgnc_board *brd)
>>>>  {
>>>>       int rc = 0;
>>>>
>>>> -     if (!brd || brd->magic != DGNC_BOARD_MAGIC)
>>>> -             return -ENODEV;
>>>> -
>>>>       if (brd->irq) {
>>>>               rc = request_irq(brd->irq, brd->bd_ops->intr,
>>>>                                IRQF_SHARED, "DGNC", brd);
>>>>
>>>
>>> This is partially correct, the check for brd being NULL is in line 371.
>> Hi Luis,
>>
>> Yes, right. but also brd was assigned the value DGNC_BOARD_MAGIC in line 384.
>> brd->magic = DGNC_BOARD_MAGIC;
>> and also dgnc_finalize_board_init() as a static function is only
>> called in dgnc_found_board(), right?
>>
>>>
>>> But there is a second check for brd->magic != DGNC_BOARD_MAGIC. Do you want
>>> to keep that one?
>> So.. I think it doesn't need to check about DGNC_BOARD_MAGIC.
>
> This is good. I was asking just to make sure it was your intention.
>
> Please add the reason to drop that second check in the commit message as well. So people
> reading the git log can understand both parts. For both patches.
OK. I will update the change log and resend it.

Thanks.

regards,
Daeseok.
>
> Thanks for the fixes :)
>
> Luis
>
>>
>>>
>>> Also, how did you find this patch. It is useful to mention this in the commit
>>> message if it was through some static analysis tool. For people using these tools
>>> in the future.
>> There are some static analysis tool for checking linux kernel code.
>> But I didn't use
>> those tools for this patch. sometimes, I usually run "smatch" tool for
>> checking linux kernel
>> code.
>>
>> thanks.
>> regards,
>> Daeseok.
>>
>>>
>>> Thanks for the patch :)
>>> Luis
>

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web