Re: [PATCH 2/2] perf-report: add --max-stack option to limit callchainstack scan

From: David Ahern
Date: Wed Oct 16 2013 - 23:01:14 EST


On 10/16/13 1:59 PM, Waiman Long wrote:
This patch adds a new --max-stack option to perf-report to limit the
depth of callchain stack data to look at to reduce the time it takes
for perf-report to finish its processing. It trades the presence of
trailing stack information with faster speed.

I like the patch. I have a similar option in my perf-sched-timehist command, and I have a patch somewhere for perf-script.

It would be even better to pass this arg kernel side and limit the stack depth at data collection time.

---8<---

diff --git a/tools/perf/builtin-report.c b/tools/perf/builtin-report.c
index 72eae74..d90d04a 100644
--- a/tools/perf/builtin-report.c
+++ b/tools/perf/builtin-report.c
@@ -37,6 +37,12 @@

#include <linux/bitmap.h>

+/*
+ * 2-level stringification macro to enable stringification of macro value
+ * */
+#define __to_string(x) #x
+#define STRINGIFY(x) __to_string(x)

These 2 lines should be somewhere else -- like util/util.h

---8<---

diff --git a/tools/perf/builtin-top.c b/tools/perf/builtin-top.c
index 2122141..2725aca 100644
--- a/tools/perf/builtin-top.c
+++ b/tools/perf/builtin-top.c
@@ -771,7 +771,8 @@ static void perf_event__process_sample(struct perf_tool *tool,
sample->callchain) {
err = machine__resolve_callchain(machine, evsel,
al.thread, sample,
- &parent, &al);
+ &parent, &al,
+ PERF_MAX_STACK_DEPTH);
if (err)
return;
}

Why not add the option to perf-top as well? copy-paste.

David
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/