aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrederic Weisbecker <fweisbec@gmail.com>2010-08-27 02:28:40 +0200
committerFrederic Weisbecker <fweisbec@gmail.com>2010-08-27 02:30:07 +0200
commit98ee74a75ca0f047e75400afa712f7bf08268b8e (patch)
treec87b267f1e279173696f2294b3930940f1a5b570
parentMerge branch 'linus' into perf/core (diff)
parentperf: Initialize callchains roots's childen hits (diff)
downloadlinux-dev-98ee74a75ca0f047e75400afa712f7bf08268b8e.tar.xz
linux-dev-98ee74a75ca0f047e75400afa712f7bf08268b8e.zip
Merge branch 'perf/urgent' into perf/core
Conflicts: tools/perf/util/callchain.h Merge reason: Fix a non-trivial conflict with latest fixes
-rw-r--r--arch/x86/kernel/cpu/perf_event_p4.c2
-rw-r--r--kernel/trace/trace_stack.c2
-rw-r--r--tools/perf/util/callchain.h1
3 files changed, 4 insertions, 1 deletions
diff --git a/arch/x86/kernel/cpu/perf_event_p4.c b/arch/x86/kernel/cpu/perf_event_p4.c
index febb12cea795..7e578e9cc58b 100644
--- a/arch/x86/kernel/cpu/perf_event_p4.c
+++ b/arch/x86/kernel/cpu/perf_event_p4.c
@@ -497,6 +497,8 @@ static int p4_hw_config(struct perf_event *event)
event->hw.config |= event->attr.config &
(p4_config_pack_escr(P4_ESCR_MASK_HT) |
p4_config_pack_cccr(P4_CCCR_MASK_HT | P4_CCCR_RESERVED));
+
+ event->hw.config &= ~P4_CCCR_FORCE_OVF;
}
rc = x86_setup_perfctr(event);
diff --git a/kernel/trace/trace_stack.c b/kernel/trace/trace_stack.c
index 056468eae7cf..a6b7e0e0f3eb 100644
--- a/kernel/trace/trace_stack.c
+++ b/kernel/trace/trace_stack.c
@@ -249,7 +249,7 @@ static int trace_lookup_stack(struct seq_file *m, long i)
{
unsigned long addr = stack_dump_trace[i];
- return seq_printf(m, "%pF\n", (void *)addr);
+ return seq_printf(m, "%pS\n", (void *)addr);
}
static void print_disabled(struct seq_file *m)
diff --git a/tools/perf/util/callchain.h b/tools/perf/util/callchain.h
index 51a8f2b600bd..c15fb8c24ad2 100644
--- a/tools/perf/util/callchain.h
+++ b/tools/perf/util/callchain.h
@@ -57,6 +57,7 @@ static inline void callchain_init(struct callchain_root *root)
root->node.parent = NULL;
root->node.hit = 0;
+ root->node.children_hit = 0;
root->max_depth = 0;
}