From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752684AbbCWE5I (ORCPT ); Mon, 23 Mar 2015 00:57:08 -0400 Received: from mail-ie0-f171.google.com ([209.85.223.171]:35493 "EHLO mail-ie0-f171.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751993AbbCWE5D (ORCPT ); Mon, 23 Mar 2015 00:57:03 -0400 Message-ID: <550F9D20.7070006@plumgrid.com> Date: Sun, 22 Mar 2015 21:57:04 -0700 From: Alexei Starovoitov User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:31.0) Gecko/20100101 Thunderbird/31.5.0 MIME-Version: 1.0 To: Masami Hiramatsu CC: Ingo Molnar , Steven Rostedt , Namhyung Kim , Arnaldo Carvalho de Melo , Jiri Olsa , "David S. Miller" , Daniel Borkmann , Peter Zijlstra , linux-api@vger.kernel.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: bpf+tracing next steps. Was: [PATCH v9 tip 3/9] tracing: attach BPF programs to kprobes References: <1426894210-27441-1-git-send-email-ast@plumgrid.com> <1426894210-27441-4-git-send-email-ast@plumgrid.com> <550D60C2.8010502@hitachi.com> <550D962E.7010400@plumgrid.com> <550E9421.7030507@hitachi.com> <550F0402.80900@plumgrid.com> <550F77B3.1020802@hitachi.com> In-Reply-To: <550F77B3.1020802@hitachi.com> Content-Type: text/plain; charset=iso-2022-jp Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 3/22/15 7:17 PM, Masami Hiramatsu wrote: > (2015/03/23 3:03), Alexei Starovoitov wrote: > >> User space tools that will compile ktap/dtrace scripts into bpf might >> use build-id for their own purpose, but that's a different discussion. > > Agreed. > I'd like to discuss it since kprobe event interface may also have same > issue. I'm not sure what 'issue' you're seeing. My understanding is that build-ids are used by perf to associate binaries with their debug info and by systemtap to make sure that probes actually match the kernel they were compiled for. In bpf case it probably will be perf way only. Are you interested in doing something with bpf ? ;) I know that Jovi is working on clang-based front-end, He Kuang is doing something fancy and I'm going to focus on 'tcp instrumentation' once bpf+kprobes is in. I think these efforts will help us make it concrete and will establish a path towards bpf+tracepoints (debug tracepoints or trace markers) and eventual integration with perf. Here is the wish-list (for kernel and userspace) inspired by Brendan: - access to pid, uid, tid, comm, etc - access to kernel stack trace - access to user-level stack trace - kernel debuginfo for walking kernel structs, and accessing kprobe entry args as variables - tracing of uprobes - tracing of user markers - user debuginfo for user structs and args - easy to use language - library of scripting features - nice one-liner syntax I think there is a lot of interest in bpf+tracing and would be good to align the efforts.