On Sat, Sep 28, 2019 at 01:41:18AM +0000, Steve MacLean wrote:
> 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.
> 
> Cc: Peter Zijlstra <pet...@infradead.org>
> Cc: Ingo Molnar <mi...@redhat.com>
> Cc: Arnaldo Carvalho de Melo <a...@kernel.org>
> Cc: Mark Rutland <mark.rutl...@arm.com>
> Cc: Alexander Shishkin <alexander.shish...@linux.intel.com>
> Cc: Jiri Olsa <jo...@redhat.com>
> Cc: Namhyung Kim <namhy...@kernel.org>
> Cc: Stephane Eranian <eran...@google.com>
> Cc: linux-kernel@vger.kernel.org
> Signed-off-by: Steve MacLean <steve.macl...@microsoft.com>

Acked-by: Jiri Olsa <jo...@kernel.org>

thanks,
jirka

> ---
>  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);
> -- 
> 2.7.4

Reply via email to