Skip to content
  • Leo Yan's avatar
    aa616f5a
    perf jit: Let convert_timestamp() to be backwards-compatible · aa616f5a
    Leo Yan authored
    
    
    Commit d110162c ("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: d110162c ("perf tsc: Support cap_user_time_short for event TIME_CONV")
    Signed-off-by: default avatarLeo Yan <leo.yan@linaro.org>
    Acked-by: default avatarAdrian 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: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    aa616f5a
    perf jit: Let convert_timestamp() to be backwards-compatible
    Leo Yan authored
    
    
    Commit d110162c ("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: d110162c ("perf tsc: Support cap_user_time_short for event TIME_CONV")
    Signed-off-by: default avatarLeo Yan <leo.yan@linaro.org>
    Acked-by: default avatarAdrian 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: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
Loading