diff options
author | Yann Droneaud <ydroneaud@opteya.com> | 2016-05-23 17:07:19 +0200 |
---|---|---|
committer | Michal Marek <mmarek@suse.com> | 2016-06-21 11:43:32 +0200 |
commit | 6dd9379e8f327e70d182b15be3ba21aa2b5d2cba (patch) | |
tree | 0e8d95f8e1748444490f8be79ba1b2dd7bde6553 /scripts/coccinelle/free/kfree.cocci | |
parent | 7a2358b3818691521c7df531415d1ea4d0398520 (diff) |
coccinelle: also catch kzfree() issues
Since commit 3ef0e5ba4673 ('slab: introduce kzfree()'),
kfree() is no more the only function to be considered:
kzfree() should be recognized too.
In particular, kzfree() must not be called on memory
allocated through devm_*() functions.
Cc: Johannes Weiner <hannes@cmpxchg.org>
Acked-by: Julia Lawall <julia.lawall@lip6.fr>
Signed-off-by: Yann Droneaud <ydroneaud@opteya.com>
Signed-off-by: Michal Marek <mmarek@suse.com>
Diffstat (limited to 'scripts/coccinelle/free/kfree.cocci')
-rw-r--r-- | scripts/coccinelle/free/kfree.cocci | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/scripts/coccinelle/free/kfree.cocci b/scripts/coccinelle/free/kfree.cocci index 577b78056990..ac438da4fd7b 100644 --- a/scripts/coccinelle/free/kfree.cocci +++ b/scripts/coccinelle/free/kfree.cocci @@ -20,7 +20,11 @@ expression E; position p1; @@ -kfree@p1(E) +( +* kfree@p1(E) +| +* kzfree@p1(E) +) @print expression@ constant char [] c; @@ -60,7 +64,11 @@ position ok; @@ while (1) { ... - kfree@ok(E) +( +* kfree@ok(E) +| +* kzfree@ok(E) +) ... when != break; when != goto l; when forall @@ -74,7 +82,11 @@ statement S; position free.p1!=loop.ok,p2!={print.p,sz.p}; @@ -kfree@p1(E,...) +( +* kfree@p1(E,...) +| +* kzfree@p1(E,...) +) ... ( iter(...,subE,...) S // no use |