summaryrefslogtreecommitdiffstats
path: root/scripts/get_abi.py
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab+huawei@kernel.org>2025-02-10 11:18:00 +0100
committerJonathan Corbet <corbet@lwn.net>2025-02-10 11:19:56 -0700
commit6b48bea16848dd7c771411db3dcc01b3bc4dd4c2 (patch)
treea2a8892dcc26e505286376e91606c39d9705a6e8 /scripts/get_abi.py
parent484e9aa6efaf96a7a5b5fe3216f24973166fbfe3 (diff)
downloadlinux-stable-6b48bea16848dd7c771411db3dcc01b3bc4dd4c2.tar.gz
linux-stable-6b48bea16848dd7c771411db3dcc01b3bc4dd4c2.tar.bz2
linux-stable-6b48bea16848dd7c771411db3dcc01b3bc4dd4c2.zip
scripts/get_abi.py: add support for symbol search
Add support for searching symbols from Documentation/ABI using regular expressions to match the symbols' names. Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> Signed-off-by: Jonathan Corbet <corbet@lwn.net> Link: https://lore.kernel.org/r/21b2c48657dde112d5417dcd7e0aa7cd383b9a0a.1739182025.git.mchehab+huawei@kernel.org
Diffstat (limited to 'scripts/get_abi.py')
-rwxr-xr-xscripts/get_abi.py24
1 files changed, 24 insertions, 0 deletions
diff --git a/scripts/get_abi.py b/scripts/get_abi.py
index bb17c54feeff..30439f21fdd0 100755
--- a/scripts/get_abi.py
+++ b/scripts/get_abi.py
@@ -85,6 +85,29 @@ class AbiValidate:
parser.check_issues()
+class AbiSearch:
+ """Initialize an argparse subparser for ABI search"""
+
+ def __init__(self, subparsers):
+ """Initialize argparse subparsers"""
+
+ parser = subparsers.add_parser("search",
+ formatter_class=argparse.ArgumentDefaultsHelpFormatter,
+ description="Search ABI using a regular expression")
+
+ parser.add_argument("expression",
+ help="Case-insensitive search pattern for the ABI symbol")
+
+ parser.set_defaults(func=self.run)
+
+ def run(self, args):
+ """Run subparser"""
+
+ parser = AbiParser(args.dir, debug=args.debug)
+ parser.parse_abi()
+ parser.search_symbols(args.expression)
+
+
def main():
"""Main program"""
@@ -97,6 +120,7 @@ def main():
AbiRest(subparsers)
AbiValidate(subparsers)
+ AbiSearch(subparsers)
args = parser.parse_args()