summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorQuentin Monnet <quentin@isovalent.com>2022-04-04 15:09:44 +0100
committerAndrii Nakryiko <andrii@kernel.org>2022-04-04 14:46:15 -0700
commit4eeebce6ac4ad80ee8243bb847c98e0e55848d47 (patch)
tree8f626a3472aa33e2a05956fd4f55d0fb2e30faa7
parentfc843ccd8e4c084fa5d605a876db2d3a3c38be88 (diff)
downloadlinux-stable-4eeebce6ac4ad80ee8243bb847c98e0e55848d47.tar.gz
linux-stable-4eeebce6ac4ad80ee8243bb847c98e0e55848d47.tar.bz2
linux-stable-4eeebce6ac4ad80ee8243bb847c98e0e55848d47.zip
selftests/bpf: Fix parsing of prog types in UAPI hdr for bpftool sync
The script for checking that various lists of types in bpftool remain in sync with the UAPI BPF header uses a regex to parse enum bpf_prog_type. If this enum contains a set of values different from the list of program types in bpftool, it complains. This script should have reported the addition, some time ago, of the new BPF_PROG_TYPE_SYSCALL, which was not reported to bpftool's program types list. It failed to do so, because it failed to parse that new type from the enum. This is because the new value, in the BPF header, has an explicative comment on the same line, and the regex does not support that. Let's update the script to support parsing enum values when they have comments on the same line. Signed-off-by: Quentin Monnet <quentin@isovalent.com> Signed-off-by: Andrii Nakryiko <andrii@kernel.org> Link: https://lore.kernel.org/bpf/20220404140944.64744-1-quentin@isovalent.com
-rwxr-xr-xtools/testing/selftests/bpf/test_bpftool_synctypes.py2
1 files changed, 1 insertions, 1 deletions
diff --git a/tools/testing/selftests/bpf/test_bpftool_synctypes.py b/tools/testing/selftests/bpf/test_bpftool_synctypes.py
index 6bf21e47882a..c0e7acd698ed 100755
--- a/tools/testing/selftests/bpf/test_bpftool_synctypes.py
+++ b/tools/testing/selftests/bpf/test_bpftool_synctypes.py
@@ -180,7 +180,7 @@ class FileExtractor(object):
@enum_name: name of the enum to parse
"""
start_marker = re.compile(f'enum {enum_name} {{\n')
- pattern = re.compile('^\s*(BPF_\w+),?$')
+ pattern = re.compile('^\s*(BPF_\w+),?(\s+/\*.*\*/)?$')
end_marker = re.compile('^};')
parser = BlockParser(self.reader)
parser.search_block(start_marker)