[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <561BA200.20108@huawei.com>
Date: Mon, 12 Oct 2015 20:05:20 +0800
From: "Wangnan (F)" <wangnan0@...wei.com>
To: Peter Zijlstra <peterz@...radead.org>,
Kaixu Xia <xiakaixu@...wei.com>
CC: <ast@...mgrid.com>, <davem@...emloft.net>, <acme@...nel.org>,
<mingo@...hat.com>, <masami.hiramatsu.pt@...achi.com>,
<jolsa@...nel.org>, <daniel@...earbox.net>,
<linux-kernel@...r.kernel.org>, <pi3orama@....com>,
<hekuang@...wei.com>, <netdev@...r.kernel.org>
Subject: Re: [RFC PATCH 1/2] perf: Add the flag sample_disable not to output
data on samples
On 2015/10/12 20:02, Peter Zijlstra wrote:
> On Mon, Oct 12, 2015 at 09:02:42AM +0000, Kaixu Xia wrote:
>> --- a/include/linux/perf_event.h
>> +++ b/include/linux/perf_event.h
>> @@ -483,6 +483,8 @@ struct perf_event {
>> perf_overflow_handler_t overflow_handler;
>> void *overflow_handler_context;
>>
>> + atomic_t *sample_disable;
>> +
>> #ifdef CONFIG_EVENT_TRACING
>> struct trace_event_call *tp_event;
>> struct event_filter *filter;
>> diff --git a/kernel/events/core.c b/kernel/events/core.c
>> index b11756f..f6ef45c 100644
>> --- a/kernel/events/core.c
>> +++ b/kernel/events/core.c
>> @@ -6337,6 +6337,9 @@ static int __perf_event_overflow(struct perf_event *event,
>> irq_work_queue(&event->pending);
>> }
>>
>> + if ((event->sample_disable) && atomic_read(event->sample_disable))
>> + return ret;
>> +
>> if (event->overflow_handler)
>> event->overflow_handler(event, data, regs);
>> else
> Try and guarantee sample_disable lives in the same cacheline as
> overflow_handler.
Could you please explain why we need them to be in a same cacheline?
Thank you.
> I think we should at the very least replace the kzalloc() currently used
> with a cacheline aligned alloc, and check the structure layout to verify
> these two do in fact share a cacheline.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists