summaryrefslogtreecommitdiffstats
path: root/tools/perf/util/unwind-libunwind.c
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-11-03 03:06:03 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-11-03 03:06:03 +0100
commit7cbe010a5ea728d7c4440b11a1a3997faca0e46d (patch)
tree9132c4c60a236f58f532086a0d8b8cc3fdf180fc /tools/perf/util/unwind-libunwind.c
parentStaging: lustre: lnet: lnet: Better cookie gen (diff)
parentLinux 3.18-rc3 (diff)
downloadlinux-7cbe010a5ea728d7c4440b11a1a3997faca0e46d.tar.xz
linux-7cbe010a5ea728d7c4440b11a1a3997faca0e46d.zip
Merge 3.18-rc3 into staging-next
We want the upstream fixes in here as well. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'tools/perf/util/unwind-libunwind.c')
-rw-r--r--tools/perf/util/unwind-libunwind.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/tools/perf/util/unwind-libunwind.c b/tools/perf/util/unwind-libunwind.c
index e060386165c5..4d45c0dfe343 100644
--- a/tools/perf/util/unwind-libunwind.c
+++ b/tools/perf/util/unwind-libunwind.c
@@ -539,11 +539,23 @@ int unwind__prepare_access(struct thread *thread)
return -ENOMEM;
}
+ unw_set_caching_policy(addr_space, UNW_CACHE_GLOBAL);
thread__set_priv(thread, addr_space);
return 0;
}
+void unwind__flush_access(struct thread *thread)
+{
+ unw_addr_space_t addr_space;
+
+ if (callchain_param.record_mode != CALLCHAIN_DWARF)
+ return;
+
+ addr_space = thread__priv(thread);
+ unw_flush_cache(addr_space, 0, 0);
+}
+
void unwind__finish_access(struct thread *thread)
{
unw_addr_space_t addr_space;