WSL2-Linux-Kernel/tools/lib/perf
Leo Yan aa616f5a8a perf jit: Let convert_timestamp() to be backwards-compatible
Commit d110162caf ("perf tsc: Support cap_user_time_short for
event TIME_CONV") supports the extended parameters for event TIME_CONV,
but it broke the backwards compatibility, so any perf data file with old
event format fails to convert timestamp.

This patch introduces a helper event_contains() to check if an event
contains a specific member or not.  For the backwards-compatibility, if
the event size confirms the extended parameters are supported in the
event TIME_CONV, then copies these parameters.

Committer notes:

To make this compiler backwards compatible add this patch:

  -       struct perf_tsc_conversion tc = { 0 };
  +       struct perf_tsc_conversion tc = { .time_shift = 0, };

Fixes: d110162caf ("perf tsc: Support cap_user_time_short for event TIME_CONV")
Signed-off-by: Leo Yan <leo.yan@linaro.org>
Acked-by: Adrian Hunter <adrian.hunter@intel.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Gustavo A. R. Silva <gustavoars@kernel.org>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Kan Liang <kan.liang@linux.intel.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Steve MacLean <Steve.MacLean@Microsoft.com>
Cc: Yonatan Goldschmidt <yonatan.goldschmidt@granulate.io>
Link: https://lore.kernel.org/r/20210428120915.7123-3-leo.yan@linaro.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2021-04-29 10:31:00 -03:00
..
Documentation libperf: Add evsel mmap support 2021-04-15 16:38:51 -03:00
include perf jit: Let convert_timestamp() to be backwards-compatible 2021-04-29 10:31:00 -03:00
tests libperf: Add support for user space counter access 2021-04-20 08:10:45 -03:00
Build libperf: Move to tools/lib/perf 2020-01-06 11:46:09 -03:00
Makefile libperf: Add man pages 2020-01-06 11:46:09 -03:00
core.c libperf: Move to tools/lib/perf 2020-01-06 11:46:09 -03:00
cpumap.c libperf: Add NULL pointer check for cpu_map iteration and NULL assignment for all_cpus. 2020-05-05 16:35:29 -03:00
evlist.c libperf: Add perf_evlist__reset_id_hash() 2021-03-06 16:54:31 -03:00
evsel.c libperf: Add support for user space counter access 2021-04-20 08:10:45 -03:00
internal.h libperf: Move to tools/lib/perf 2020-01-06 11:46:09 -03:00
lib.c libperf: Move to tools/lib/perf 2020-01-06 11:46:09 -03:00
libperf.map libperf: Add evsel mmap support 2021-04-15 16:38:51 -03:00
libperf.pc.template libperf: Move to tools/lib/perf 2020-01-06 11:46:09 -03:00
mmap.c libperf: Add support for user space counter access 2021-04-20 08:10:45 -03:00
threadmap.c libperf: Move to tools/lib/perf 2020-01-06 11:46:09 -03:00
xyarray.c libperf: Move to tools/lib/perf 2020-01-06 11:46:09 -03:00