mirror of
https://github.com/torvalds/linux.git
synced 2024-11-26 22:21:42 +00:00
perf report: Output non-zero offset for decompressed records
Print offset of PERF_RECORD_COMPRESSED record instead of zero for decompressed records in raw trace dump (-D option of perf-report): 0x17cf08 [0x28]: event: 9 instead of: 0 [0x28]: event: 9 The fix is not critical, because currently file_pos for compressed events is used in perf_session__process_event only to show offsets in the raw dump. This patch was separated from patchset: https://lore.kernel.org/lkml/cover.1629186429.git.alexey.v.bayduraev@linux.intel.com/ and was already rewieved. Reviewed-by: Riccardo Mancini <rickyman7@gmail.com> Signed-off-by: Alexey Bayduraev <alexey.v.bayduraev@linux.intel.com> Tested-by: Riccardo Mancini <rickyman7@gmail.com> Acked-by: Andi Kleen <ak@linux.intel.com> Acked-by: Jiri Olsa <jolsa@redhat.com> Acked-by: Namhyung Kim <namhyung@kernel.org> Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: Alexander Antonov <alexander.antonov@linux.intel.com> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> Cc: Alexei Budankov <abudankov@huawei.com> Cc: Ingo Molnar <mingo@redhat.com> Cc: Peter Zijlstra <peterz@infradead.org> Link: https://lore.kernel.org/r/20210929091445.18274-1-alexey.v.bayduraev@linux.intel.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
parent
26d6574109
commit
8e820f9623
@ -2116,7 +2116,7 @@ fetch_decomp_event(u64 head, size_t mmap_size, char *buf, bool needs_swap)
|
||||
static int __perf_session__process_decomp_events(struct perf_session *session)
|
||||
{
|
||||
s64 skip;
|
||||
u64 size, file_pos = 0;
|
||||
u64 size;
|
||||
struct decomp *decomp = session->decomp_last;
|
||||
|
||||
if (!decomp)
|
||||
@ -2132,7 +2132,7 @@ static int __perf_session__process_decomp_events(struct perf_session *session)
|
||||
size = event->header.size;
|
||||
|
||||
if (size < sizeof(struct perf_event_header) ||
|
||||
(skip = perf_session__process_event(session, event, file_pos)) < 0) {
|
||||
(skip = perf_session__process_event(session, event, decomp->file_pos)) < 0) {
|
||||
pr_err("%#" PRIx64 " [%#x]: failed to process type: %d\n",
|
||||
decomp->file_pos + decomp->head, event->header.size, event->header.type);
|
||||
return -EINVAL;
|
||||
|
Loading…
Reference in New Issue
Block a user