[PATCH 3/3] perf inject: Add vmlinux and ignore-vmlinux arguments

From: James Clark
Date: Mon Oct 18 2021 - 09:51:58 EST


Other perf tools allow specifying the path to vmlinux. Perf inject
didn't have this argument which made some auxtrace workflows difficult.

Also add ignore-vmlinux for consistency with other tools.

Suggested-by: Denis Nitikin <denik@xxxxxxxxxxxx>
Signed-off-by: James Clark <james.clark@xxxxxxx>
---
tools/perf/builtin-inject.c | 7 +++++++
1 file changed, 7 insertions(+)

diff --git a/tools/perf/builtin-inject.c b/tools/perf/builtin-inject.c
index 6ad191e731fc..4261ad89730f 100644
--- a/tools/perf/builtin-inject.c
+++ b/tools/perf/builtin-inject.c
@@ -938,6 +938,10 @@ int cmd_inject(int argc, const char **argv)
#endif
OPT_INCR('v', "verbose", &verbose,
"be more verbose (show build ids, etc)"),
+ OPT_STRING('k', "vmlinux", &symbol_conf.vmlinux_name,
+ "file", "vmlinux pathname"),
+ OPT_BOOLEAN(0, "ignore-vmlinux", &symbol_conf.ignore_vmlinux,
+ "don't load vmlinux even if found"),
OPT_STRING(0, "kallsyms", &symbol_conf.kallsyms_name, "file",
"kallsyms pathname"),
OPT_BOOLEAN('f', "force", &data.force, "don't complain, do it"),
@@ -972,6 +976,9 @@ int cmd_inject(int argc, const char **argv)
return -1;
}

+ if (symbol__validate_sym_arguments())
+ return -1;
+
if (inject.in_place_update) {
if (!strcmp(inject.input_name, "-")) {
pr_err("Input file name required for in-place updating\n");
--
2.28.0