Commit 08b3f913 authored by Ingo Molnar's avatar Ingo Molnar
Browse files

Merge tag 'perf-core-for-mingo' of...

Merge tag 'perf-core-for-mingo' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux

 into perf/core

Pull perf/core improvements and fixes from Arnaldo Carvalho de Melo:

User visible changes:

  - Bash completion for subcommands (Yunlong Song)

  - Allow annotating entries in callchains in the hists browser (top/report).
    TODO: give some visual cue to what entries in callchains have samples and thus
    can be annotated and/or allow showing the source code for functions without
    samples (Arnaldo Carvalho de Melo)

  - Don't allow empty argument for '-t' in perf report, fixing segfault (Wang Nan)

Infrastructure:

  - Prep work for moving the perf feature tests build system to tools/build (Jiri Olsa)

  - Fix perf-read-vdsox32 not building and lib64 install dir (H.J. Lu)

  - ARM64: fix building error and eh/debug frame offset cache fixes (Wang Nan)

Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
parents c80e5c0c 0c8c2077
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -528,8 +528,7 @@ clean: $(LIBTRACEEVENT)-clean $(LIBAPI)-clean config-clean
	$(Q)find . -name '*.o' -delete -o -name '\.*.cmd' -delete -o -name '\.*.d' -delete
	$(Q)$(RM) .config-detected
	$(call QUIET_CLEAN, core-progs) $(RM) $(ALL_PROGRAMS) perf perf-read-vdso32 perf-read-vdsox32
	$(call QUIET_CLEAN, core-gen)   $(RM)  *.spec *.pyc *.pyo */*.pyc */*.pyo $(OUTPUT)common-cmds.h TAGS tags cscope* $(OUTPUT)PERF-VERSION-FILE $(OUTPUT)PERF-FEATURES $(OUTPUT)util/*-bison* $(OUTPUT)util/*-flex*
	$(call QUIET_CLEAN, feature-detect) $(RM) $(OUTPUT)config/feature-checks/.make-*.output
	$(call QUIET_CLEAN, core-gen)   $(RM)  *.spec *.pyc *.pyo */*.pyc */*.pyo $(OUTPUT)common-cmds.h TAGS tags cscope* $(OUTPUT)PERF-VERSION-FILE $(OUTPUT)FEATURE-DUMP $(OUTPUT)util/*-bison* $(OUTPUT)util/*-flex*
	$(QUIET_SUBDIR0)Documentation $(QUIET_SUBDIR1) clean
	$(python-clean)

+4 −2
Original line number Diff line number Diff line
@@ -22,7 +22,9 @@ static const struct option data_options[] = {
	OPT_END()
};

static const char * const data_usage[] = {
static const char * const data_subcommands[] = { "convert", NULL };

static const char *data_usage[] = {
	"perf data [<common options>] <command> [<options>]",
	NULL
};
@@ -98,7 +100,7 @@ int cmd_data(int argc, const char **argv, const char *prefix)
	if (argc < 2)
		goto usage;

	argc = parse_options(argc, argv, data_options, data_usage,
	argc = parse_options_subcommand(argc, argv, data_options, data_subcommands, data_usage,
			     PARSE_OPT_STOP_AT_NON_OPTION);
	if (argc < 1)
		goto usage;
+14 −3
Original line number Diff line number Diff line
@@ -437,7 +437,18 @@ int cmd_help(int argc, const char **argv, const char *prefix __maybe_unused)
			HELP_FORMAT_INFO),
	OPT_END(),
	};
	const char * const builtin_help_usage[] = {
	const char * const builtin_help_subcommands[] = {
		"buildid-cache", "buildid-list", "diff", "evlist", "help", "list",
		"record", "report", "bench", "stat", "timechart", "top", "annotate",
		"script", "sched", "kmem", "lock", "kvm", "test", "inject", "mem", "data",
#ifdef HAVE_LIBELF_SUPPORT
		"probe",
#endif
#ifdef HAVE_LIBAUDIT_SUPPORT
		"trace",
#endif
	NULL };
	const char *builtin_help_usage[] = {
		"perf help [--all] [--man|--web|--info] [command]",
		NULL
	};
@@ -448,8 +459,8 @@ int cmd_help(int argc, const char **argv, const char *prefix __maybe_unused)

	perf_config(perf_help_config, &help_format);

	argc = parse_options(argc, argv, builtin_help_options,
			builtin_help_usage, 0);
	argc = parse_options_subcommand(argc, argv, builtin_help_options,
			builtin_help_subcommands, builtin_help_usage, 0);

	if (show_all) {
		printf("\n usage: %s\n\n", perf_usage_string);
+1 −1
Original line number Diff line number Diff line
@@ -676,7 +676,7 @@ int cmd_report(int argc, const char **argv, const char *prefix __maybe_unused)
	OPT_STRING('w', "column-widths", &symbol_conf.col_width_list_str,
		   "width[,width...]",
		   "don't try to adjust column width, use these fixed values"),
	OPT_STRING('t', "field-separator", &symbol_conf.field_sep, "separator",
	OPT_STRING_NOEMPTY('t', "field-separator", &symbol_conf.field_sep, "separator",
		   "separator for columns, no spaces will be added between "
		   "columns '.' is reserved."),
	OPT_BOOLEAN('U', "hide-unresolved", &report.hide_unresolved,
+3 −2
Original line number Diff line number Diff line
@@ -1572,7 +1572,8 @@ int cmd_script(int argc, const char **argv, const char *prefix __maybe_unused)
		    "Show the mmap events"),
	OPT_END()
	};
	const char * const script_usage[] = {
	const char * const script_subcommands[] = { "record", "report", NULL };
	const char *script_usage[] = {
		"perf script [<options>]",
		"perf script [<options>] record <script> [<record-options>] <command>",
		"perf script [<options>] report <script> [script-args]",
@@ -1586,7 +1587,7 @@ int cmd_script(int argc, const char **argv, const char *prefix __maybe_unused)

	setup_scripting();

	argc = parse_options(argc, argv, options, script_usage,
	argc = parse_options_subcommand(argc, argv, options, script_subcommands, script_usage,
			     PARSE_OPT_STOP_AT_NON_OPTION);

	file.path = input_name;
Loading