Linux Audio

Check our new training course

Loading...
Note: File does not exist in v6.8.
 1///
 2/// Casting (void *) value returned by kmalloc is useless
 3/// as mentioned in Documentation/CodingStyle, Chap 14.
 4///
 5// Confidence: High
 6// Copyright: 2009,2010 Nicolas Palix, DIKU.  GPLv2.
 7// URL: http://coccinelle.lip6.fr/
 8// Options: -no_includes -include_headers
 9//
10// Keywords: kmalloc, kzalloc, kcalloc
11// Version min: < 2.6.12 kmalloc
12// Version min: < 2.6.12 kcalloc
13// Version min:   2.6.14 kzalloc
14//
15
16virtual context
17virtual patch
18virtual org
19virtual report
20
21//----------------------------------------------------------
22//  For context mode
23//----------------------------------------------------------
24
25@depends on context@
26type T;
27@@
28
29* (T *)
30  \(kmalloc\|kzalloc\|kcalloc\)(...)
31
32//----------------------------------------------------------
33//  For patch mode
34//----------------------------------------------------------
35
36@depends on patch@
37type T;
38@@
39
40- (T *)
41  \(kmalloc\|kzalloc\|kcalloc\)(...)
42
43//----------------------------------------------------------
44//  For org and report mode
45//----------------------------------------------------------
46
47@r depends on org || report@
48type T;
49position p;
50@@
51
52 (T@p *)\(kmalloc\|kzalloc\|kcalloc\)(...)
53
54@script:python depends on org@
55p << r.p;
56t << r.T;
57@@
58
59coccilib.org.print_safe_todo(p[0], t)
60
61@script:python depends on report@
62p << r.p;
63t << r.T;
64@@
65
66msg="WARNING: casting value returned by k[cmz]alloc to (%s *) is useless." % (t)
67coccilib.report.print_report(p[0], msg)