aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/util/jitdump.c
diff options
context:
space:
mode:
authorStefano Sanfilippo <ssanfilippo@chromium.org>2016-10-13 03:59:42 -0700
committerArnaldo Carvalho de Melo <acme@redhat.com>2016-10-24 11:07:40 -0300
commit6760d77b708571b925e2dd2b61f847cbee6e0f21 (patch)
tree3a694adb15c01e4a9a0e4822e310dbcdfb0f957d /tools/perf/util/jitdump.c
parentperf jit: Generate .eh_frame/.eh_frame_hdr in DSO (diff)
downloadlinux-dev-6760d77b708571b925e2dd2b61f847cbee6e0f21.tar.xz
linux-dev-6760d77b708571b925e2dd2b61f847cbee6e0f21.zip
perf jit: Check JITHEADER_VERSION
Check the version number when opening a jitdump file. Accept older versions, but not newer ones. Signed-off-by: Stefano Sanfilippo <ssanfilippo@chromium.org> Signed-off-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Stephane Eranian <eranian@google.com> Cc: Anton Blanchard <anton@ozlabs.org> Cc: Jiri Olsa <jolsa@redhat.com> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Peter Zijlstra <peterz@infradead.org> Link: http://lkml.kernel.org/r/1476356383-30100-9-git-send-email-eranian@google.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/util/jitdump.c')
-rw-r--r--tools/perf/util/jitdump.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/tools/perf/util/jitdump.c b/tools/perf/util/jitdump.c
index 6a2688da3c4a..c9a941ef0f6d 100644
--- a/tools/perf/util/jitdump.c
+++ b/tools/perf/util/jitdump.c
@@ -180,6 +180,12 @@ jit_open(struct jit_buf_desc *jd, const char *name)
header.elf_mach,
jd->use_arch_timestamp);
+ if (header.version > JITHEADER_VERSION) {
+ pr_err("wrong jitdump version %u, expected " STR(JITHEADER_VERSION),
+ header.version);
+ goto error;
+ }
+
if (header.flags & JITDUMP_FLAGS_RESERVED) {
pr_err("jitdump file contains invalid or unsupported flags 0x%llx\n",
(unsigned long long)header.flags & JITDUMP_FLAGS_RESERVED);