Re: [PATCH 2/3] perf arm-spe: Save context ID in record
From: German Gomez
Date: Tue Nov 09 2021 - 05:41:47 EST
On 06/11/2021 13:47, Leo Yan wrote:
> On Tue, Nov 02, 2021 at 06:07:38PM +0000, German Gomez wrote:
>> This patch is to save context ID in record, this will be used to set TID
>> for samples.
>>
>> Signed-off-by: Leo Yan <leo.yan@xxxxxxxxxx>
>> Signed-off-by: James Clark <james.clark@xxxxxxx>
>> Signed-off-by: German Gomez <german.gomez@xxxxxxx>
>> ---
>> tools/perf/util/arm-spe-decoder/arm-spe-decoder.c | 2 ++
>> tools/perf/util/arm-spe-decoder/arm-spe-decoder.h | 1 +
>> 2 files changed, 3 insertions(+)
>>
>> diff --git a/tools/perf/util/arm-spe-decoder/arm-spe-decoder.c b/tools/perf/util/arm-spe-decoder/arm-spe-decoder.c
>> index 32fe41835..1b58859d2 100644
>> --- a/tools/perf/util/arm-spe-decoder/arm-spe-decoder.c
>> +++ b/tools/perf/util/arm-spe-decoder/arm-spe-decoder.c
>> @@ -151,6 +151,7 @@ static int arm_spe_read_record(struct arm_spe_decoder *decoder)
>> u64 payload, ip;
>>
>> memset(&decoder->record, 0x0, sizeof(decoder->record));
>> + decoder->record.context_id = -1;
> Since 'context_id' is type u64, here it's good to assign '(u64)-1'.
Ack.
Thanks,
German
>
>> while (1) {
>> err = arm_spe_get_next_packet(decoder);
>> @@ -180,6 +181,7 @@ static int arm_spe_read_record(struct arm_spe_decoder *decoder)
>> case ARM_SPE_COUNTER:
>> break;
>> case ARM_SPE_CONTEXT:
>> + decoder->record.context_id = payload;
>> break;
>> case ARM_SPE_OP_TYPE:
>> if (idx == SPE_OP_PKT_HDR_CLASS_LD_ST_ATOMIC) {
>> diff --git a/tools/perf/util/arm-spe-decoder/arm-spe-decoder.h b/tools/perf/util/arm-spe-decoder/arm-spe-decoder.h
>> index 59bdb7309..46a8556a9 100644
>> --- a/tools/perf/util/arm-spe-decoder/arm-spe-decoder.h
>> +++ b/tools/perf/util/arm-spe-decoder/arm-spe-decoder.h
>> @@ -38,6 +38,7 @@ struct arm_spe_record {
>> u64 timestamp;
>> u64 virt_addr;
>> u64 phys_addr;
>> + u64 context_id;
>> };
>>
>> struct arm_spe_insn;
>> --
>> 2.25.1
>>