Skip to content

Commit

Permalink
checkpatch: do not apply "initialise globals to 0" check to BPF progs
Browse files Browse the repository at this point in the history
BPF programs explicitly initialise global variables to 0 to make sure
clang (v10 or older) do not put the variables in the common section.
Skip "initialise globals to 0" check for BPF programs to elimiate error
messages like:

    ERROR: do not initialise globals to 0
    #19: FILE: samples/bpf/tracex1_kern.c:21:

Cc: Andy Whitcroft <[email protected]>
Cc: Joe Perches <[email protected]>
Signed-off-by: Song Liu <[email protected]>
  • Loading branch information
liu-song-6 authored and kernel-patches-bot committed Feb 8, 2021
1 parent a24dd8b commit 8c98248
Showing 1 changed file with 5 additions and 1 deletion.
6 changes: 5 additions & 1 deletion scripts/checkpatch.pl
Original file line number Diff line number Diff line change
Expand Up @@ -4330,7 +4330,11 @@ sub process {
}

# check for global initialisers.
if ($line =~ /^\+$Type\s*$Ident(?:\s+$Modifier)*\s*=\s*($zero_initializer)\s*;/) {
# Do not apply to BPF programs (tools/testing/selftests/bpf/progs/*.c, samples/bpf/*_kern.c, *.bpf.c).
if ($line =~ /^\+$Type\s*$Ident(?:\s+$Modifier)*\s*=\s*($zero_initializer)\s*;/ &&
$realfile !~ /^tools\/testing\/selftests\/bpf\/progs\/.*\.c/ &&
$realfile !~ /^samples\/bpf\/.*_kern.c/ &&
$realfile !~ /.bpf.c$/) {
if (ERROR("GLOBAL_INITIALISERS",
"do not initialise globals to $1\n" . $herecurr) &&
$fix) {
Expand Down

0 comments on commit 8c98248

Please sign in to comment.