From mboxrd@z Thu Jan 1 00:00:00 1970 From: Brendan Gregg Subject: Re: [PATCH RFC v4 net-next 00/26] BPF syscall, maps, verifier, samples, llvm Date: Thu, 14 Aug 2014 12:17:39 -0700 Message-ID: References: <1407916658-8731-1-git-send-email-ast@plumgrid.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Return-path: In-Reply-To: <1407916658-8731-1-git-send-email-ast-uqk4Ao+rVK5Wk0Htik3J/w@public.gmane.org> Sender: linux-api-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org To: Alexei Starovoitov Cc: "David S. Miller" , Ingo Molnar , Linus Torvalds , Andy Lutomirski , Steven Rostedt , Daniel Borkmann , Chema Gonzalez , Eric Dumazet , Peter Zijlstra , "H. Peter Anvin" , Andrew Morton , Kees Cook , linux-api-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org List-Id: linux-api@vger.kernel.org On Wed, Aug 13, 2014 at 12:57 AM, Alexei Starovoitov wrote: [...] > Tracing use case got some improvements as well. Now eBPF programs can be > attached to tracepoint, syscall, kprobe and C examples are more usable: > ex1_kern.c - demonstrate how programs can walk in-kernel data structures > ex2_kern.c - in-kernel event accounting and user space histograms > See patch #25 This is great, thanks! I've been using this new support, and successfully ported an an older tool of mine (bitesize) to eBPF. I was using the block:block_rq_issue tracepoint, and performing a custom in-kernel histogram, like in the ex2_kern.c example, for I/O size. I also did some quick overhead testing and found eBPF with JIT to be relatively fast. (I'd share numbers but it's platform specific.) The syscall tracepoints were a bit slower than hoped, for what I think is a well known issue. Are there thoughts in general for how this might be used for embedded devices, where installing clang/llvm might be prohibitive? Compile on another system and move the binaries over? thanks, Brendan