]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
scripts/get_abi.py: add support for undefined ABIs
authorMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Mon, 10 Feb 2025 10:18:15 +0000 (11:18 +0100)
committerJonathan Corbet <corbet@lwn.net>
Mon, 10 Feb 2025 18:19:57 +0000 (11:19 -0700)
commit0d5fd96880d9135a4b35fb5523896b21b13dde78
treef1d100be93393620ba7e08ae6a14316b85155604
parent6649b4217089c5d17dc210946baf9c9537c7fb5d
scripts/get_abi.py: add support for undefined ABIs

The undefined logic is complex and has lots of magic on it.

Implement it, using the same algorithm we have at get_abi.pl. Yet,
some tweaks to optimize performance and to make the code simpler
were added here:
- at the perl version, the tree graph had loops, so we had to
  use BFS to traverse it. On this version, the graph is a tree,
  so, it simplifies the what group for sysfs aliases;
- the logic which splits regular expressions into subgroups
  was re-written to make it faster;
- it may optionally use multiple processes to search for symbol
  matches;
- it has some additional debug levels.

Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Link: https://lore.kernel.org/r/1529c255845d117696d5af57d8dc05554663afdf.1739182025.git.mchehab+huawei@kernel.org
scripts/get_abi.py
scripts/lib/abi/abi_regex.py [new file with mode: 0644]
scripts/lib/abi/helpers.py
scripts/lib/abi/system_symbols.py [new file with mode: 0644]