From mboxrd@z Thu Jan 1 00:00:00 1970 From: Peter Zijlstra Subject: Re: [RFC perf,bpf 1/5] perf, bpf: Introduce PERF_RECORD_BPF_EVENT Date: Wed, 7 Nov 2018 09:40:57 +0100 Message-ID: <20181107084057.GG9781@hirez.programming.kicks-ass.net> References: <20181106205246.567448-1-songliubraving@fb.com> <20181106205246.567448-2-songliubraving@fb.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, kernel-team@fb.com, ast@kernel.org, daniel@iogearbox.net, acme@kernel.org To: Song Liu Return-path: Content-Disposition: inline In-Reply-To: <20181106205246.567448-2-songliubraving@fb.com> Sender: linux-kernel-owner@vger.kernel.org List-Id: netdev.vger.kernel.org On Tue, Nov 06, 2018 at 12:52:42PM -0800, Song Liu wrote: > For better performance analysis of BPF programs, this patch introduces > PERF_RECORD_BPF_EVENT, a new perf_event_type that exposes BPF program > load/unload information to user space. > > /* > * Record different types of bpf events: > * enum perf_bpf_event_type { > * PERF_BPF_EVENT_UNKNOWN = 0, > * PERF_BPF_EVENT_PROG_LOAD = 1, > * PERF_BPF_EVENT_PROG_UNLOAD = 2, > * }; > * > * struct { > * struct perf_event_header header; > * u16 type; > * u16 flags; > * u32 id; // prog_id or map_id > * }; > */ > PERF_RECORD_BPF_EVENT = 17, > > PERF_RECORD_BPF_EVENT contains minimal information about the BPF program. > Perf utility (or other user space tools) should listen to this event and > fetch more details about the event via BPF syscalls > (BPF_PROG_GET_FD_BY_ID, BPF_OBJ_GET_INFO_BY_FD, etc.). Why !? You're failing to explain why it cannot provide the full information there.