mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-04 04:04:19 +00:00
coccinelle: add patch rule for dma_alloc_coherent
Commitdfd32cad14
("dma-mapping: remove dma_zalloc_coherent()") removed the definition of dma_zalloc_coherent() and also removed the corresponding patch rule for replacing instances of dma_alloc_coherent + memset in zalloc-simple.cocci (though left the report rule). Add a new patch rule to remove unnecessary calls to memset after allocating with dma_alloc_coherent. While we're at it, fix a couple of typos. Fixes:dfd32cad14
("dma-mapping: remove dma_zalloc_coherent()") Signed-off-by: Alex Dewar <alex.dewar90@gmail.com> Signed-off-by: Julia Lawall <Julia.Lawall@inria.fr>
This commit is contained in:
parent
4b2bd20c35
commit
7a2624e6de
@ -127,6 +127,16 @@ statement S;
|
||||
if ((x==NULL) || ...) S
|
||||
- memset((T2)x,0,E1);
|
||||
|
||||
@depends on patch@
|
||||
type T, T2;
|
||||
expression x;
|
||||
expression E1,E2,E3,E4;
|
||||
statement S;
|
||||
@@
|
||||
x = (T)dma_alloc_coherent(E1, E2, E3, E4);
|
||||
if ((x==NULL) || ...) S
|
||||
- memset((T2)x, 0, E2);
|
||||
|
||||
//----------------------------------------------------------
|
||||
// For org mode
|
||||
//----------------------------------------------------------
|
||||
@ -199,9 +209,9 @@ statement S;
|
||||
position p;
|
||||
@@
|
||||
|
||||
x = (T)dma_alloc_coherent@p(E2,E1,E3,E4);
|
||||
x = (T)dma_alloc_coherent@p(E1,E2,E3,E4);
|
||||
if ((x==NULL) || ...) S
|
||||
memset((T2)x,0,E1);
|
||||
memset((T2)x,0,E2);
|
||||
|
||||
@script:python depends on org@
|
||||
p << r2.p;
|
||||
@ -217,7 +227,7 @@ p << r2.p;
|
||||
x << r2.x;
|
||||
@@
|
||||
|
||||
msg="WARNING: dma_alloc_coherent use in %s already zeroes out memory, so memset is not needed" % (x)
|
||||
msg="WARNING: dma_alloc_coherent used in %s already zeroes out memory, so memset is not needed" % (x)
|
||||
coccilib.report.print_report(p[0], msg)
|
||||
|
||||
//-----------------------------------------------------------------
|
||||
|
Loading…
Reference in New Issue
Block a user