[PATCH] objtool: Print top level commands on incorrect usage

From: Kamalesh Babulal
Date: Fri Oct 13 2017 - 04:21:49 EST


Maintain the consistency with objtool subcommands, by
printing cmd_usage() of top level commands, along with
the error. When incorrect option/command is passed to
objtool. Also change the exit code to 129, like other
objtool subcommands.

After the patch:
$ ./objtool -j
Unknown option: -j

usage: objtool COMMAND [ARGS]

Commands:
check Perform stack metadata validation on an object file
orc Generate in-place ORC unwind tables for an object file

$ echo $?
129

Cc: Ingo Molnar <mingo@xxxxxxxxxx>
Signed-off-by: Kamalesh Babulal <kamalesh@xxxxxxxxxxxxxxxxxx>
---
tools/objtool/objtool.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/tools/objtool/objtool.c b/tools/objtool/objtool.c
index 31e0f91..07f3299 100644
--- a/tools/objtool/objtool.c
+++ b/tools/objtool/objtool.c
@@ -70,7 +70,7 @@ static void cmd_usage(void)

printf("\n");

- exit(1);
+ exit(129);
}

static void handle_options(int *argc, const char ***argv)
@@ -86,9 +86,7 @@ static void handle_options(int *argc, const char ***argv)
break;
} else {
fprintf(stderr, "Unknown option: %s\n", cmd);
- fprintf(stderr, "\n Usage: %s\n",
- objtool_usage_string);
- exit(1);
+ cmd_usage();
}

(*argv)++;
--
2.7.4