2011-02-02 16:53:22

by Julia Lawall

[permalink] [raw]
Subject: [PATCH] drivers/mtd/maps/ts5500_flash.c: avoid calling map_destroy on NULL

map_destroy dereferences its argument. The call is furthermore only
reachable when this argument is NULL. Thus the call is dropped.

The semantic match that finds this problem is as follows:
(http://coccinelle.lip6.fr/)

// <smpl>
@@
expression *x;
@@

*if (x == NULL)
{ ...
* map_destroy(x);
...
return ...;
}
// </smpl>

Signed-off-by: Julia Lawall <[email protected]>

---
drivers/mtd/maps/ts5500_flash.c | 1 -
1 file changed, 1 deletion(-)

diff --git a/drivers/mtd/maps/ts5500_flash.c b/drivers/mtd/maps/ts5500_flash.c
index e2147bf..e02dfa9 100644
--- a/drivers/mtd/maps/ts5500_flash.c
+++ b/drivers/mtd/maps/ts5500_flash.c
@@ -94,7 +94,6 @@ static int __init init_ts5500_map(void)
return 0;

err1:
- map_destroy(mymtd);
iounmap(ts5500_map.virt);
err2:
return rc;


2011-02-06 15:09:22

by Artem Bityutskiy

[permalink] [raw]
Subject: Re: [PATCH] drivers/mtd/maps/ts5500_flash.c: avoid calling map_destroy on NULL

On Wed, 2011-02-02 at 18:13 +0100, Julia Lawall wrote:
> map_destroy dereferences its argument. The call is furthermore only
> reachable when this argument is NULL. Thus the call is dropped.
>
> The semantic match that finds this problem is as follows:
> (http://coccinelle.lip6.fr/)

Pushed to l2-mtd-2.6.git, thanks!

--
Best Regards,
Artem Bityutskiy (Артём Битюцкий)