From: Alexei Starovoitov <ast@plumgrid.com>
To: Peter Zijlstra <peterz@infradead.org>, pi3orama <pi3orama@163.com>
Cc: "Wangnan (F)" <wangnan0@huawei.com>,
xiakaixu <xiakaixu@huawei.com>,
davem@davemloft.net, acme@kernel.org, mingo@redhat.com,
masami.hiramatsu.pt@hitachi.com, jolsa@kernel.org,
daniel@iogearbox.net, linux-kernel@vger.kernel.org,
hekuang@huawei.com, netdev@vger.kernel.org
Subject: Re: [PATCH V5 1/1] bpf: control events stored in PERF_EVENT_ARRAY maps trace data output when perf sampling
Date: Wed, 21 Oct 2015 14:19:49 -0700 [thread overview]
Message-ID: <56280175.8060404@plumgrid.com> (raw)
In-Reply-To: <20151021165758.GK3604@twins.programming.kicks-ass.net>
On 10/21/15 9:57 AM, Peter Zijlstra wrote:
>> In summary, your either-or logic doesn't hold in BPF world. A BPF
>> >program can only access perf event in a highly restricted way. We
>> >don't allow it calling perf_event_read_local() across core, so it
>> >can't.
That's actually broken. My fault as well, since I didn't review that
patch carefully enough. Will send a fix in a second.
No matter what bpf program does that should never be a kernel splat.
> Urgh, that's still horridly inconsistent. Can we please come up with a
> consistent interface to perf?
I had the same concerns during v1-v4 series of this set.
My suggestion was to do ioctl(enable/disable) of events from userspace
after receiving notification from kernel via my bpf_perf_event_output()
helper.
Wangnan's argument was that display refresh happens often and it's fast,
so the time taken by user space to enable events on all cpus is too
slow and ioctl does ipi and disturbs other cpus even more.
So soft_disable done by the program to enable/disable particular events
on all cpus kinda makes sense.
next prev parent reply other threads:[~2015-10-21 21:19 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-20 7:22 [PATCH V5 0/1] bpf: control events stored in PERF_EVENT_ARRAY maps trace data output when perf sampling Kaixu Xia
2015-10-20 7:22 ` [PATCH V5 1/1] " Kaixu Xia
2015-10-20 22:53 ` Alexei Starovoitov
2015-10-21 9:12 ` Peter Zijlstra
2015-10-21 10:31 ` xiakaixu
2015-10-21 11:33 ` Peter Zijlstra
2015-10-21 11:49 ` Wangnan (F)
2015-10-21 12:17 ` Peter Zijlstra
2015-10-21 13:42 ` Wangnan (F)
2015-10-21 13:49 ` Peter Zijlstra
2015-10-21 14:01 ` pi3orama
2015-10-21 14:09 ` Peter Zijlstra
2015-10-21 15:06 ` pi3orama
2015-10-21 16:57 ` Peter Zijlstra
2015-10-21 21:19 ` Alexei Starovoitov [this message]
2015-10-22 9:06 ` Peter Zijlstra
2015-10-22 10:28 ` Wangnan (F)
2015-10-23 12:52 ` Peter Zijlstra
2015-10-23 15:12 ` Peter Zijlstra
2015-10-27 6:43 ` xiakaixu
2015-10-22 2:46 ` Wangnan (F)
2015-10-22 7:39 ` Ingo Molnar
2015-10-22 7:51 ` Wangnan (F)
2015-10-22 9:24 ` Peter Zijlstra
2015-10-22 1:56 ` Wangnan (F)
2015-10-22 3:09 ` Alexei Starovoitov
2015-10-22 3:12 ` Wangnan (F)
2015-10-22 3:26 ` Alexei Starovoitov
2015-10-22 9:49 ` Peter Zijlstra
2015-10-21 11:34 ` Wangnan (F)
2015-10-21 11:56 ` Peter Zijlstra
2015-10-21 12:03 ` Wangnan (F)
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=56280175.8060404@plumgrid.com \
--to=ast@plumgrid.com \
--cc=acme@kernel.org \
--cc=daniel@iogearbox.net \
--cc=davem@davemloft.net \
--cc=hekuang@huawei.com \
--cc=jolsa@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=masami.hiramatsu.pt@hitachi.com \
--cc=mingo@redhat.com \
--cc=netdev@vger.kernel.org \
--cc=peterz@infradead.org \
--cc=pi3orama@163.com \
--cc=wangnan0@huawei.com \
--cc=xiakaixu@huawei.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).