/usr/src/linux-headers-5.15.0-181/scripts/coccinelle/misc
NameSizeModeActions
add_namespace.cocci8370644editdlrm
array_size.cocci17290644editdlrm
array_size_dup.cocci48940644editdlrm
badty.cocci17290644editdlrm
boolconv.cocci15060644editdlrm
boolreturn.cocci6980644editdlrm
bugon.cocci15150644editdlrm
cond_no_effect.cocci21210644editdlrm
cstptr.cocci8520644editdlrm
doubleinit.cocci14080644editdlrm
excluded_middle.cocci6770644editdlrm
flexible_array.cocci18210644editdlrm
ifaddr.cocci6840644editdlrm
ifcol.cocci12580644editdlrm
irqf_oneshot.cocci20070644editdlrm
minmax.cocci32880644editdlrm
newline_in_nl_msg.cocci16500644editdlrm
noderef.cocci12190644editdlrm
of_table.cocci13660644editdlrm
orplus.cocci10530644editdlrm
returnvar.cocci12860644editdlrm
semicolon.cocci10950644editdlrm
swap.cocci15170644editdlrm
uninitialized_var.cocci16290644editdlrm
warn.cocci16860644editdlrm
Edit: /usr/src/linux-headers-5.15.0-181/scripts/coccinelle/misc/of_table.cocci (1366B)
// SPDX-License-Identifier: GPL-2.0 /// Make sure (of/i2c/platform)_device_id tables are NULL terminated // // Keywords: of_table i2c_table platform_table // Confidence: Medium // Options: --include-headers virtual patch virtual context virtual org virtual report @depends on context@ identifier var, arr; expression E; @@ ( struct \(of_device_id \| i2c_device_id \| platform_device_id\) arr[] = { ..., { .var = E, * } }; | struct \(of_device_id \| i2c_device_id \| platform_device_id\) arr[] = { ..., * { ..., E, ... }, }; ) @depends on patch@ identifier var, arr; expression E; @@ ( struct \(of_device_id \| i2c_device_id \| platform_device_id\) arr[] = { ..., { .var = E, - } + }, + { } }; | struct \(of_device_id \| i2c_device_id \| platform_device_id\) arr[] = { ..., { ..., E, ... }, + { }, }; ) @r depends on org || report@ position p1; identifier var, arr; expression E; @@ ( struct \(of_device_id \| i2c_device_id \| platform_device_id\) arr[] = { ..., { .var = E, } @p1 }; | struct \(of_device_id \| i2c_device_id \| platform_device_id\) arr[] = { ..., { ..., E, ... } @p1 }; ) @script:python depends on org@ p1 << r.p1; arr << r.arr; @@ cocci.print_main(arr,p1) @script:python depends on report@ p1 << r.p1; arr << r.arr; @@ msg = "%s is not NULL terminated at line %s" % (arr, p1[0].line) coccilib.report.print_report(p1[0],msg)