From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751467AbcBLQLx (ORCPT ); Fri, 12 Feb 2016 11:11:53 -0500 Received: from mga04.intel.com ([192.55.52.120]:30405 "EHLO mga04.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750913AbcBLQLw (ORCPT ); Fri, 12 Feb 2016 11:11:52 -0500 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.22,436,1449561600"; d="scan'208";a="882951695" From: Tom Zanussi To: ast@plumgrid.com, rostedt@goodmis.org Cc: masami.hiramatsu.pt@hitachi.com, namhyung@kernel.org, peterz@infradead.org, linux-kernel@vger.kernel.org, Tom Zanussi Subject: [RFC][PATCH 00/10] Add trace event support to eBPF Date: Fri, 12 Feb 2016 10:11:18 -0600 Message-Id: X-Mailer: git-send-email 1.9.3 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, As promised in previous threads, this patchset shares some common functionality with the hist triggers code and enables trace events to be accessed from eBPF programs. It needs to be applied on top of current tracing/for-next with the hist triggers v13 patches applied: https://lkml.org/lkml/2015/12/10/640 Any input welcome, especially things that could be done better wrt eBPF, since I'm not as familiar with that code... Thanks, Tom The following changes since commit def7919edab980525728a6ee9728c23ececdaf52: tracing: Add hist trigger 'log2' modifier (2016-02-10 09:51:54 -0600) are available in the git repository at: git://git.yoctoproject.org/linux-yocto-contrib.git tzanussi/ebpf-trace-events-v0 http://git.yoctoproject.org/cgit/cgit.cgi/linux-yocto-contrib/log/?h=tzanussi/ebpf-trace-events-v0 Tom Zanussi (10): tracing: Move some constants to ring_buffer.h eBPF: Add BPF_PROG_TYPE_TRACE_EVENT prog type tracing: Add an 'accessor' function to ftrace_event_field tracing: Add trace event accessor functions eBPF/tracing: Add eBPF trace event field access helpers tracing: Add kprobe/uprobe support for TRACE_EVENT eBPF progs tracing: Add eBPF program support to static trace events samples/bpf: Add support for trace events to the eBPF loading code samples/bpf: Add readcounts-by-pid example samples/bpf: Add kprobe-event-fields example include/linux/ring_buffer.h | 35 ++++++++ include/linux/trace_events.h | 7 ++ include/trace/perf.h | 10 +++ include/uapi/linux/bpf.h | 19 +++++ kernel/bpf/verifier.c | 2 +- kernel/events/core.c | 12 +-- kernel/trace/bpf_trace.c | 149 +++++++++++++++++++++++++++++++++ kernel/trace/ring_buffer.c | 31 ------- kernel/trace/trace.h | 5 ++ kernel/trace/trace_events.c | 111 ++++++++++++++++++++++++ kernel/trace/trace_events_hist.c | 103 +++-------------------- kernel/trace/trace_kprobe.c | 20 ++++- kernel/trace/trace_syscalls.c | 18 ++++ kernel/trace/trace_uprobe.c | 11 ++- samples/bpf/Makefile | 8 ++ samples/bpf/bpf_helpers.h | 4 + samples/bpf/bpf_load.c | 46 ++++++++-- samples/bpf/kprobe-event-fields_kern.c | 56 +++++++++++++ samples/bpf/kprobe-event-fields_user.c | 25 ++++++ samples/bpf/readcounts-by-pid_kern.c | 57 +++++++++++++ samples/bpf/readcounts-by-pid_user.c | 66 +++++++++++++++ 21 files changed, 657 insertions(+), 138 deletions(-) create mode 100644 samples/bpf/kprobe-event-fields_kern.c create mode 100644 samples/bpf/kprobe-event-fields_user.c create mode 100644 samples/bpf/readcounts-by-pid_kern.c create mode 100644 samples/bpf/readcounts-by-pid_user.c -- 1.9.3