]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
objtool: Collate parse_options() users
authorPeter Zijlstra <peterz@infradead.org>
Fri, 26 Feb 2021 10:18:24 +0000 (11:18 +0100)
committerIngo Molnar <mingo@kernel.org>
Sat, 6 Mar 2021 11:44:23 +0000 (12:44 +0100)
Ensure there's a single place that parses check_options, in
preparation for extending where to get options from.

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Acked-by: Josh Poimboeuf <jpoimboe@redhat.com>
Link: https://lkml.kernel.org/r/20210226110004.193108106@infradead.org
tools/objtool/builtin-check.c
tools/objtool/builtin-orc.c
tools/objtool/include/objtool/builtin.h

index 97f063d55b9ff3f2ff01ca6dfe092717a3320763..03997524b93fb58dda429d08dc331e7bf5d7c2ef 100644 (file)
@@ -42,17 +42,21 @@ const struct option check_options[] = {
        OPT_END(),
 };
 
+int cmd_parse_options(int argc, const char **argv, const char * const usage[])
+{
+       argc = parse_options(argc, argv, check_options, usage, 0);
+       if (argc != 1)
+               usage_with_options(usage, check_options);
+       return argc;
+}
+
 int cmd_check(int argc, const char **argv)
 {
        const char *objname;
        struct objtool_file *file;
        int ret;
 
-       argc = parse_options(argc, argv, check_options, check_usage, 0);
-
-       if (argc != 1)
-               usage_with_options(check_usage, check_options);
-
+       argc = cmd_parse_options(argc, argv, check_usage);
        objname = argv[0];
 
        file = objtool_open_read(objname);
index 8273bbf7cebb1f669bf6f222f88bf51291344e5d..17f8b93077381ea58514ab990aff88f999478048 100644 (file)
@@ -34,10 +34,7 @@ int cmd_orc(int argc, const char **argv)
                struct objtool_file *file;
                int ret;
 
-               argc = parse_options(argc, argv, check_options, orc_usage, 0);
-               if (argc != 1)
-                       usage_with_options(orc_usage, check_options);
-
+               argc = cmd_parse_options(argc, argv, orc_usage);
                objname = argv[0];
 
                file = objtool_open_read(objname);
index d019210d74b122148795776375736133c09129d5..15ac0b7d3d6a3cc971fcd3ff6db56845109df3e9 100644 (file)
@@ -11,6 +11,8 @@ extern const struct option check_options[];
 extern bool no_fp, no_unreachable, retpoline, module, backtrace, uaccess, stats,
             validate_dup, vmlinux, mcount, noinstr, backup;
 
+extern int cmd_parse_options(int argc, const char **argv, const char * const usage[]);
+
 extern int cmd_check(int argc, const char **argv);
 extern int cmd_orc(int argc, const char **argv);