Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ce1984cc authored by Ingo Molnar's avatar Ingo Molnar
Browse files

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

Merge tag 'perf-core-for-mingo-20160226' 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:

 - Show extra line telling no entries below --percent-limit are
   at that --hierarchy level (Namhyung Kim)

 - 'perf report/top --hierarchy' assorted alignment fixes (Namhyung Kim)

 - Handle empty print fmts in 'perf script -s' i.e. when running
   python or perl scripts (Taeung Song)

 - Improve support for bpf-output events in 'perf trace' (Wang Nan)

 - Fix parsing of pmu events with empty list of modifiers, this
   cures a perf/core-only regression where '-e intel_pt//' got
   broken (Arnaldo Carvalho de Melo)

Infrastructure changes:

 - Improve missing OpenJDK devel files error message in jvmti
   Makefile (Stephane Eranian)

 - Remove duplicated code and needless script_spec__findnew() (Taeung Song)

 - Bring perf_default_config to the very beginning at main(), removing
   the need for each subcommand to do this (Wang Nan)

Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
parents 06466212 1d6c9407
Loading
Loading
Loading
Loading
+0 −2
Original line number Original line Diff line number Diff line
@@ -1264,8 +1264,6 @@ int cmd_diff(int argc, const char **argv, const char *prefix __maybe_unused)
	if (ret < 0)
	if (ret < 0)
		return ret;
		return ret;


	perf_config(perf_default_config, NULL);

	argc = parse_options(argc, argv, options, diff_usage, 0);
	argc = parse_options(argc, argv, options, diff_usage, 0);


	if (symbol__init(NULL) < 0)
	if (symbol__init(NULL) < 0)
+1 −1
Original line number Original line Diff line number Diff line
@@ -272,7 +272,7 @@ static int perf_help_config(const char *var, const char *value, void *cb)
	if (!prefixcmp(var, "man."))
	if (!prefixcmp(var, "man."))
		return add_man_viewer_info(var, value);
		return add_man_viewer_info(var, value);


	return perf_default_config(var, value, cb);
	return 0;
}
}


static struct cmdnames main_cmds, other_cmds;
static struct cmdnames main_cmds, other_cmds;
+2 −2
Original line number Original line Diff line number Diff line
@@ -1834,7 +1834,7 @@ static int __cmd_record(int argc, const char **argv)
	return cmd_record(i, rec_argv, NULL);
	return cmd_record(i, rec_argv, NULL);
}
}


static int kmem_config(const char *var, const char *value, void *cb)
static int kmem_config(const char *var, const char *value, void *cb __maybe_unused)
{
{
	if (!strcmp(var, "kmem.default")) {
	if (!strcmp(var, "kmem.default")) {
		if (!strcmp(value, "slab"))
		if (!strcmp(value, "slab"))
@@ -1847,7 +1847,7 @@ static int kmem_config(const char *var, const char *value, void *cb)
		return 0;
		return 0;
	}
	}


	return perf_default_config(var, value, cb);
	return 0;
}
}


int cmd_kmem(int argc, const char **argv, const char *prefix __maybe_unused)
int cmd_kmem(int argc, const char **argv, const char *prefix __maybe_unused)
+1 −1
Original line number Original line Diff line number Diff line
@@ -90,7 +90,7 @@ static int report__config(const char *var, const char *value, void *cb)
		return 0;
		return 0;
	}
	}


	return perf_default_config(var, value, cb);
	return 0;
}
}


static int hist_iter__report_callback(struct hist_entry_iter *iter,
static int hist_iter__report_callback(struct hist_entry_iter *iter,
+3 −18
Original line number Original line Diff line number Diff line
@@ -1212,23 +1212,6 @@ static struct script_spec *script_spec__find(const char *spec)
	return NULL;
	return NULL;
}
}


static struct script_spec *script_spec__findnew(const char *spec,
						struct scripting_ops *ops)
{
	struct script_spec *s = script_spec__find(spec);

	if (s)
		return s;

	s = script_spec__new(spec, ops);
	if (!s)
		return NULL;

	script_spec__add(s);

	return s;
}

int script_spec_register(const char *spec, struct scripting_ops *ops)
int script_spec_register(const char *spec, struct scripting_ops *ops)
{
{
	struct script_spec *s;
	struct script_spec *s;
@@ -1237,9 +1220,11 @@ int script_spec_register(const char *spec, struct scripting_ops *ops)
	if (s)
	if (s)
		return -1;
		return -1;


	s = script_spec__findnew(spec, ops);
	s = script_spec__new(spec, ops);
	if (!s)
	if (!s)
		return -1;
		return -1;
	else
		script_spec__add(s);


	return 0;
	return 0;
}
}
Loading