lkml.org 
[lkml]   [2016]   [Feb]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Date
SubjectRe: [PATCH 1/1] Perf: fix overwritten of free running PEBSv3 timestamp
How about moving `time' to the `group', Will this help?

Regards,

Tong

Signed-off-by: Tong Zhang <ztong@vt.edu>
------
diff --git a/include/linux/perf_event.h b/include/linux/perf_event.h
index 3f590de..3163598 100644
--- a/include/linux/perf_event.h
+++ b/include/linux/perf_event.h
@@ -797,6 +797,7 @@ struct perf_sample_data {
u64 period;
u64 weight;
u64 txn;
+ u64 time;
union perf_mem_data_src data_src;

/*
@@ -809,7 +810,6 @@ struct perf_sample_data {
u32 pid;
u32 tid;
} tid_entry;
- u64 time;
u64 id;
u64 stream_id;
struct {
On Thu, Feb 11, 2016 at 9:57 AM, Peter Zijlstra <peterz@infradead.org> wrote:
> On Wed, Feb 10, 2016 at 05:38:02PM -0500, Tong Zhang wrote:
>> commit a7b58d211ba18c9175b139e18b68c86a6bcc3c3f introduced feature of
>> timestamp on free running PEBSv3, however, the timestamp is later
>> overwritten, which makes the effort in vain.
>>
>> This patch fixed this problem by detecting whether timestamp is provided.
>>
>> Signed-off-by: Tong Zhang <ztong@vt.edu>
>> ---
>> include/linux/perf_event.h | 1 +
>> kernel/events/core.c | 45 +++++++++++++++++++++++++++++++++------------
>> kernel/events/ring_buffer.c | 4 +++-
>> 3 files changed, 37 insertions(+), 13 deletions(-)
>>
>> diff --git a/include/linux/perf_event.h b/include/linux/perf_event.h
>> index f9828a4..12d7b95 100644
>> --- a/include/linux/perf_event.h
>> +++ b/include/linux/perf_event.h
>> @@ -815,6 +815,7 @@ static inline void perf_sample_data_init(struct perf_sample_data *data,
>> data->weight = 0;
>> data->data_src.val = PERF_MEM_NA;
>> data->txn = 0;
>> + data->time = 0;
>> }
>
> Argh, you just touched a new cacheline and made _every_ single event
> slower.

\
 
 \ /
  Last update: 2016-02-11 18:01    [W:0.526 / U:0.064 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site