[V4,1/2] perf event: Fix the Retire Latency sample_type check failure

Message ID 20230206162100.3329395-1-kan.liang@linux.intel.com
State New
Headers
Series [V4,1/2] perf event: Fix the Retire Latency sample_type check failure |

Commit Message

Liang, Kan Feb. 6, 2023, 4:20 p.m. UTC
  From: Kan Liang <kan.liang@linux.intel.com>

perf test -v "x86 sample parsing"
 74: x86 Sample parsing                                              :
--- start ---
test child forked, pid 72526
Samples differ at 'retire_lat'
parsing failed for sample_type 0x1000000
test child finished with -1
---- end ----
x86 Sample parsing: FAILED!

In the arch_perf_synthesize_sample_weight(), the retire_lat is
mistakenly missed.

Reported-by: Arnaldo Carvalho de Melo <acme@kernel.org>
Signed-off-by: Kan Liang <kan.liang@linux.intel.com>
---
 tools/perf/arch/x86/util/event.c | 1 +
 1 file changed, 1 insertion(+)
  

Patch

diff --git a/tools/perf/arch/x86/util/event.c b/tools/perf/arch/x86/util/event.c
index 37b3feb53e8d..e4288d09f3a0 100644
--- a/tools/perf/arch/x86/util/event.c
+++ b/tools/perf/arch/x86/util/event.c
@@ -101,6 +101,7 @@  void arch_perf_synthesize_sample_weight(const struct perf_sample *data,
 	if (type & PERF_SAMPLE_WEIGHT_STRUCT) {
 		*array &= 0xffffffff;
 		*array |= ((u64)data->ins_lat << 32);
+		*array |= ((u64)data->retire_lat << 48);
 	}
 }