bpf.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH bpf-next] selftests/bpf: Fix parsing of prog types in UAPI hdr for bpftool sync
@ 2022-04-04 14:09 Quentin Monnet
  2022-04-04 21:50 ` patchwork-bot+netdevbpf
  0 siblings, 1 reply; 2+ messages in thread
From: Quentin Monnet @ 2022-04-04 14:09 UTC (permalink / raw)
  To: Alexei Starovoitov, Daniel Borkmann, Andrii Nakryiko
  Cc: netdev, bpf, Quentin Monnet, Milan Landaverde

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.

Cc: Andrii Nakryiko <andrii@kernel.org>
Cc: Milan Landaverde <milan@mdaverde.com>
Signed-off-by: Quentin Monnet <quentin@isovalent.com>
---
 tools/testing/selftests/bpf/test_bpftool_synctypes.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

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)
-- 
2.32.0


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH bpf-next] selftests/bpf: Fix parsing of prog types in UAPI hdr for bpftool sync
  2022-04-04 14:09 [PATCH bpf-next] selftests/bpf: Fix parsing of prog types in UAPI hdr for bpftool sync Quentin Monnet
@ 2022-04-04 21:50 ` patchwork-bot+netdevbpf
  0 siblings, 0 replies; 2+ messages in thread
From: patchwork-bot+netdevbpf @ 2022-04-04 21:50 UTC (permalink / raw)
  To: Quentin Monnet; +Cc: ast, daniel, andrii, netdev, bpf, milan

Hello:

This patch was applied to bpf/bpf-next.git (master)
by Andrii Nakryiko <andrii@kernel.org>:

On Mon,  4 Apr 2022 15:09:44 +0100 you wrote:
> 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.
> 
> [...]

Here is the summary with links:
  - [bpf-next] selftests/bpf: Fix parsing of prog types in UAPI hdr for bpftool sync
    https://git.kernel.org/bpf/bpf-next/c/4eeebce6ac4a

You are awesome, thank you!
-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html



^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2022-04-04 22:24 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-04 14:09 [PATCH bpf-next] selftests/bpf: Fix parsing of prog types in UAPI hdr for bpftool sync Quentin Monnet
2022-04-04 21:50 ` patchwork-bot+netdevbpf

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).