applied. thanks, -len On Fri, 26 Sep 2008, Julien Brunel wrote: > After a variable is assigned the result of backlight_device_register, an error > test should be performed before a dereference. > > 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,E; > identifier fld; > position def0.p0; > position p != protected.p; > @@ > x@p0 > ... when != x = E > * x@p->fld > // </smpl> > > Signed-off-by: Julien Brunel <brunel@xxxxxxx> > Signed-off-by: Julia Lawall <julia@xxxxxxx> > > --- > drivers/acpi/video.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff -u -p a/drivers/acpi/video.c b/drivers/acpi/video.c > --- a/drivers/acpi/video.c > +++ b/drivers/acpi/video.c > @@ -752,6 +752,8 @@ static void acpi_video_device_find_cap(s > sprintf(name, "acpi_video%d", count++); > device->backlight = backlight_device_register(name, > NULL, device, &acpi_backlight_ops); > + if (IS_ERR(device->backlight)) > + return; > device->backlight->props.max_brightness = device->brightness->count-3; > /* > * If there exists the _BQC object, the _BQC object will be > -- > To unsubscribe from this list: send the line "unsubscribe linux-acpi" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html > -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html