xref: /openbmc/linux/scripts/coccinelle/free/kfreeaddr.cocci (revision 61cb48c3f93adee633f996dd40ff5267fae55b3a)
1*61cb48c3SJulia Lawall/// Free of a structure field
2*61cb48c3SJulia Lawall///
3*61cb48c3SJulia Lawall// Confidence: High
4*61cb48c3SJulia Lawall// Copyright: (C) 2013 Julia Lawall, INRIA/LIP6.  GPLv2.
5*61cb48c3SJulia Lawall// URL: http://coccinelle.lip6.fr/
6*61cb48c3SJulia Lawall// Comments:
7*61cb48c3SJulia Lawall// Options: -no_includes -include_headers
8*61cb48c3SJulia Lawall
9*61cb48c3SJulia Lawallvirtual org
10*61cb48c3SJulia Lawallvirtual report
11*61cb48c3SJulia Lawallvirtual context
12*61cb48c3SJulia Lawall
13*61cb48c3SJulia Lawall@r depends on context || report || org @
14*61cb48c3SJulia Lawallexpression e;
15*61cb48c3SJulia Lawallidentifier f;
16*61cb48c3SJulia Lawallposition p;
17*61cb48c3SJulia Lawall@@
18*61cb48c3SJulia Lawall
19*61cb48c3SJulia Lawall* kfree@p(&e->f)
20*61cb48c3SJulia Lawall
21*61cb48c3SJulia Lawall@script:python depends on org@
22*61cb48c3SJulia Lawallp << r.p;
23*61cb48c3SJulia Lawall@@
24*61cb48c3SJulia Lawall
25*61cb48c3SJulia Lawallcocci.print_main("kfree",p)
26*61cb48c3SJulia Lawall
27*61cb48c3SJulia Lawall@script:python depends on report@
28*61cb48c3SJulia Lawallp << r.p;
29*61cb48c3SJulia Lawall@@
30*61cb48c3SJulia Lawall
31*61cb48c3SJulia Lawallmsg = "ERROR: kfree of structure field"
32*61cb48c3SJulia Lawallcoccilib.report.print_report(p[0],msg)
33