]> err.no Git - linux-2.6/commit
ACPI: drivers/acpi: elide a non-zero test on a result that is never 0
authorJulia Lawall <julia@diku.dk>
Thu, 27 Mar 2008 05:48:22 +0000 (01:48 -0400)
committerLen Brown <len.brown@intel.com>
Thu, 27 Mar 2008 05:48:22 +0000 (01:48 -0400)
commit1192aeb957402b45f311895f124e4ca41206843c
tree877e5ac536ba87cdfe441c95c49e04f7bc8c63a4
parent86d9fc1293aa9456677eab94e9fd2d3a10920548
ACPI: drivers/acpi: elide a non-zero test on a result that is never 0

The function thermal_cooling_device_register always returns either a valid
pointer or a value made with ERR_PTR, so a test for non-zero on the result
will always succeed.

The problem was found using the following semantic match.
(http://www.emn.fr/x-info/coccinelle/)

//<smpl>
@a@
expression E, E1;
statement S,S1;
position p;
@@

E = thermal_cooling_device_register(...)
... when != E = E1
if@p (E) S else S1

@n@
position a.p;
expression E,E1;
statement S,S1;
@@

E = NULL
... when != E = E1
if@p (E) S else S1

@depends on !n@
expression E;
statement S,S1;
position a.p;
@@

* if@p (E)
  S else S1
//</smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Len Brown <len.brown@intel.com>
drivers/acpi/fan.c
drivers/acpi/processor_core.c
drivers/acpi/video.c