of: MSI: Simplify irqdomain lookup
[linux/fpc-iii.git] / scripts / coccinelle / api / vma_pages.cocci
blob3e52e11ea1dc8af8b3a77b6f7d4c2dc043ad02d4
1 ///
2 /// Use vma_pages function on vma object instead of explicit computation.
3 ///
4 //  Confidence: High
5 //  Keywords: vma_pages vma
6 //  Comment: Based on resource_size.cocci
8 virtual context
9 virtual patch
10 virtual org
11 virtual report
13 //----------------------------------------------------------
14 //  For context mode
15 //----------------------------------------------------------
17 @r_context depends on context && !patch && !org && !report@
18 struct vm_area_struct *vma;
21 * (vma->vm_end - vma->vm_start) >> PAGE_SHIFT
23 //----------------------------------------------------------
24 //  For patch mode
25 //----------------------------------------------------------
27 @r_patch depends on !context && patch && !org && !report@
28 struct vm_area_struct *vma;
31 - ((vma->vm_end - vma->vm_start) >> PAGE_SHIFT)
32 + vma_pages(vma)
34 //----------------------------------------------------------
35 //  For org mode
36 //----------------------------------------------------------
38 @r_org depends on !context && !patch && (org || report)@
39 struct vm_area_struct *vma;
40 position p;
43   (vma->vm_end@p - vma->vm_start) >> PAGE_SHIFT
45 @script:python depends on report@
46 p << r_org.p;
47 x << r_org.vma;
50 msg="WARNING: Consider using vma_pages helper on %s" % (x)
51 coccilib.report.print_report(p[0], msg)
53 @script:python depends on org@
54 p << r_org.p;
55 x << r_org.vma;
58 msg="WARNING: Consider using vma_pages helper on %s" % (x)
59 msg_safe=msg.replace("[","@(").replace("]",")")
60 coccilib.org.print_todo(p[0], msg_safe)