Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

3 Commits   0 Branches   0 Tags
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  1) // SPDX-License-Identifier: GPL-2.0-only
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  2) /// sizeof when applied to a pointer typed expression gives the size of
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  3) /// the pointer
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  4) ///
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  5) // Confidence: High
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  6) // Copyright: (C) 2012 Julia Lawall, INRIA/LIP6.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  7) // Copyright: (C) 2012 Gilles Muller, INRIA/LiP6.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  8) // URL: http://coccinelle.lip6.fr/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  9) // Comments:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) // Options: --no-includes --include-headers
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) virtual org
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) virtual report
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) virtual context
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) virtual patch
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) @depends on patch@
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) expression *x;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) expression f;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) expression i;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) type T;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) @@
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) (
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) x = <+... sizeof(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) - x
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) + *x
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28)    ) ...+>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) |
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) f(...,(T)(x),...,sizeof(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) - x
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) + *x
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33)    ),...)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) |
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) f(...,sizeof(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) - x
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) + *x
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38)    ),...,(T)(x),...)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) |
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) f(...,(T)(x),...,i*sizeof(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) - x
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) + *x
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43)    ),...)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) |
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) f(...,i*sizeof(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) - x
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) + *x
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48)    ),...,(T)(x),...)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) @r depends on !patch@
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) expression *x;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) expression f;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) expression i;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) position p;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) type T;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) @@
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) (
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) *x = <+... sizeof@p(x) ...+>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) |
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) *f(...,(T)(x),...,sizeof@p(x),...)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) |
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) *f(...,sizeof@p(x),...,(T)(x),...)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) |
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) *f(...,(T)(x),...,i*sizeof@p(x),...)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) |
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) *f(...,i*sizeof@p(x),...,(T)(x),...)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) @script:python depends on org@
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) p << r.p;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) @@
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) cocci.print_main("application of sizeof to pointer",p)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) @script:python depends on report@
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) p << r.p;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) @@
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81) msg = "ERROR: application of sizeof to pointer"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82) coccilib.report.print_report(p[0],msg)