From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751650AbdARX7V (ORCPT ); Wed, 18 Jan 2017 18:59:21 -0500 Received: from slow1-d.mail.gandi.net ([217.70.178.86]:33413 "EHLO slow1-d.mail.gandi.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751276AbdARX7N (ORCPT ); Wed, 18 Jan 2017 18:59:13 -0500 X-Originating-IP: 208.91.1.34 From: Joe Stringer To: linux-kernel@vger.kernel.org Cc: wangnan0@huawei.com, ast@fb.com, daniel@iogearbox.net, acme@kernel.org Subject: [PATCH perf/core 0/6] Libbpf improvements Date: Wed, 18 Jan 2017 15:57:18 -0800 Message-Id: <20170118235724.26103-1-joe@ovn.org> X-Mailer: git-send-email 2.11.0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Patch 1 fixes an issue when using drastically different BPF map definitions inside ELFs from a client using libbpf, vs the map definition libbpf uses. Patch 2 is a trivial typo fix. Patches 3-5 add some simple, useful helper functions for setting prog type and retrieving libbpf errors without depending on kernel headers from userspace programs. Patch 6 adds a new pinning functionality for an entire object. Calling bpf_object__pin(obj, subpath) will mount all programs from the BPF object to $bpf_fs_path/$subpath/progs/$progname, and all maps from the BPF object to $bpf_fs_path/$subpath/maps/$mapname. The first program with a particular name will be mounted with its progname and the suffix "_0"; subsequent programs with the same will have "_1", and so on; duplicate maps with the same name are disallowed. Joe Stringer (6): tools lib bpf: Fix map offsets in relocation tools lib bpf: Fix grammar in map_idx warning tools lib bpf: Define prog_type fns with macro tools lib bpf: Add set/is helpers for all prog types tools lib bpf: Add libbpf_get_error() tools lib bpf: Add bpf_object__pin() tools/lib/bpf/libbpf.c | 197 +++++++++++++++++++++++++++++++++++++++++------- tools/lib/bpf/libbpf.h | 15 +++- tools/perf/tests/llvm.c | 2 +- 3 files changed, 185 insertions(+), 29 deletions(-) -- 2.11.0