The following commit has been merged into the perf/urgent branch of tip:

Commit-ID:     b59711e9b0d22fd47abfa00602fd8c365cdd3ab7
Gitweb:        
https://git.kernel.org/tip/b59711e9b0d22fd47abfa00602fd8c365cdd3ab7
Author:        Steve MacLean <steve.macl...@microsoft.com>
AuthorDate:    Sat, 28 Sep 2019 01:41:18 
Committer:     Arnaldo Carvalho de Melo <a...@redhat.com>
CommitterDate: Mon, 30 Sep 2019 17:29:49 -03:00

perf inject jit: Fix JIT_CODE_MOVE filename

During perf inject --jit, JIT_CODE_MOVE records were injecting MMAP records
with an incorrect filename. Specifically it was missing the ".so" suffix.

Further the JIT_CODE_LOAD record were silently truncating the
jr->load.code_index field to 32 bits before generating the filename.

Make both records emit the same filename based on the full 64 bit
code_index field.

Fixes: 9b07e27f88b9 ("perf inject: Add jitdump mmap injection support")
Cc: sta...@vger.kernel.org # v4.6+
Signed-off-by: Steve MacLean <steve.macl...@microsoft.com>
Acked-by: Jiri Olsa <jo...@kernel.org>
Cc: Alexander Shishkin <alexander.shish...@linux.intel.com>
Cc: Andi Kleen <a...@linux.intel.com>
Cc: Brian Robbins <brian...@microsoft.com>
Cc: Davidlohr Bueso <d...@stgolabs.net>
Cc: Eric Saint-Etienne <eric.saint.etie...@oracle.com>
Cc: John Keeping <j...@metanate.com>
Cc: John Salem <josa...@microsoft.com>
Cc: Leo Yan <leo....@linaro.org>
Cc: Mark Rutland <mark.rutl...@arm.com>
Cc: Namhyung Kim <namhy...@kernel.org>
Cc: Peter Zijlstra <pet...@infradead.org>
Cc: Song Liu <songliubrav...@fb.com>
Cc: Stephane Eranian <eran...@google.com>
Cc: Tom McDonald <thomas.mcdon...@microsoft.com>
Link: 
http://lore.kernel.org/lkml/bn8pr21mb1362ff8f127b31dbf4121528f7...@bn8pr21mb1362.namprd21.prod.outlook.com
Signed-off-by: Arnaldo Carvalho de Melo <a...@redhat.com>
---
 tools/perf/util/jitdump.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/tools/perf/util/jitdump.c b/tools/perf/util/jitdump.c
index 1bdf4c6..e3ccb0c 100644
--- a/tools/perf/util/jitdump.c
+++ b/tools/perf/util/jitdump.c
@@ -395,7 +395,7 @@ static int jit_repipe_code_load(struct jit_buf_desc *jd, 
union jr_entry *jr)
        size_t size;
        u16 idr_size;
        const char *sym;
-       uint32_t count;
+       uint64_t count;
        int ret, csize, usize;
        pid_t pid, tid;
        struct {
@@ -418,7 +418,7 @@ static int jit_repipe_code_load(struct jit_buf_desc *jd, 
union jr_entry *jr)
                return -1;
 
        filename = event->mmap2.filename;
-       size = snprintf(filename, PATH_MAX, "%s/jitted-%d-%u.so",
+       size = snprintf(filename, PATH_MAX, "%s/jitted-%d-%" PRIu64 ".so",
                        jd->dir,
                        pid,
                        count);
@@ -529,7 +529,7 @@ static int jit_repipe_code_move(struct jit_buf_desc *jd, 
union jr_entry *jr)
                return -1;
 
        filename = event->mmap2.filename;
-       size = snprintf(filename, PATH_MAX, "%s/jitted-%d-%"PRIu64,
+       size = snprintf(filename, PATH_MAX, "%s/jitted-%d-%" PRIu64 ".so",
                 jd->dir,
                 pid,
                 jr->move.code_index);

Reply via email to