lkml.org 
[lkml]   [2008]   [Nov]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [Linux-fbdev-devel] [PATCH] drivers/video: Bad error test before a dereference
Hi Andrew,

Nicolas Ferre :
> Julien Brunel :
>> The error test that follows the call to backlight_device_register
>> semms not to concern the right variable.
>>
>> A simplified version of the semantic match that finds this problem is
>> as follows:
>> (http://www.emn.fr/x-info/coccinelle/)
>> // <smpl>
>> @def0@
>> expression x;
>> position p0;
>> @@
>> x@p0 = backlight_device_register(...)
>>
>> @protected@
>> expression def0.x,E;
>> position def0.p0;
>> position p;
>> statement S;
>> @@
>> x@p0
>> ... when != x = E
>> if (!IS_ERR(x) && ...) {<... x@p ...>} else S
>>
>> @unprotected@
>> expression def0.x;
>> identifier fld;
>> position def0.p0;
>> position p != protected.p;
>> @@
>> x@p0
>> ... when != x = E
>> * x@p->fld
>> // </smpl>
>>
>> Signed-off-by: Julien Brunel <brunel@diku.dk>
>> Signed-off-by: Julia Lawall <julia@diku.dk>
>
> Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>

I do not know if you noticed this little patch but
I think it will be good if we can queue it for -final.

Do you want me to reformulate the submission or the
original email ok for you ?

>> ---
>> drivers/video/atmel_lcdfb.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff -u -p a/drivers/video/atmel_lcdfb.c b/drivers/video/atmel_lcdfb.c
>> --- a/drivers/video/atmel_lcdfb.c
>> +++ b/drivers/video/atmel_lcdfb.c
>> @@ -132,7 +132,7 @@ static void init_backlight(struct atmel_
>>
>> bl = backlight_device_register("backlight", &sinfo->pdev->dev,
>> sinfo, &atmel_lcdc_bl_ops);
>> - if (IS_ERR(sinfo->backlight)) {
>> + if (IS_ERR(bl)) {
>> dev_err(&sinfo->pdev->dev, "error %ld on backlight register\n",
>> PTR_ERR(bl));
>> return;

Thanks, regards,
--
Nicolas Ferre



\
 
 \ /
  Last update: 2008-11-13 09:29    [W:0.032 / U:0.796 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site