From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-3.1 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id EF6B8C282CB for ; Wed, 6 Feb 2019 00:30:13 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id B71072183E for ; Wed, 6 Feb 2019 00:30:13 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=fb.com header.i=@fb.com header.b="MPccTYcb" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727181AbfBFAaI (ORCPT ); Tue, 5 Feb 2019 19:30:08 -0500 Received: from mx0a-00082601.pphosted.com ([67.231.145.42]:57804 "EHLO mx0a-00082601.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726806AbfBFAaI (ORCPT ); Tue, 5 Feb 2019 19:30:08 -0500 Received: from pps.filterd (m0044008.ppops.net [127.0.0.1]) by mx0a-00082601.pphosted.com (8.16.0.27/8.16.0.27) with SMTP id x160TPaZ003352 for ; Tue, 5 Feb 2019 16:30:07 -0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fb.com; h=from : to : cc : subject : date : message-id : mime-version : content-type; s=facebook; bh=JrBnANnh5Lgjth1YURGanOM3wVM7xU/xszxL65QLnNs=; b=MPccTYcb0rvbtaHCDPbPsAXR+0u3vJFwR572+LfRwR/kM1K7s3L/SiPmcQen3nza5fyF DOj9tDyP/zBJWjTPmmYfZKVOM6PgMCBpBYH5+H7DhMKsZfEG1vE9PwGS/QyWgWNBQa/C /WpD1B+MtcsDS4OjOTu4C/3VZDSEoPG5h0Y= Received: from maileast.thefacebook.com ([199.201.65.23]) by mx0a-00082601.pphosted.com with ESMTP id 2qfmamg46t-4 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT) for ; Tue, 05 Feb 2019 16:30:07 -0800 Received: from mx-out.facebook.com (2620:10d:c0a1:3::13) by mail.thefacebook.com (2620:10d:c021:18::175) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA) id 15.1.1531.3; Tue, 5 Feb 2019 16:30:05 -0800 Received: by devvm7221.prn2.facebook.com (Postfix, from userid 137359) id D24C6A035E45; Tue, 5 Feb 2019 16:30:01 -0800 (PST) Smtp-Origin-Hostprefix: devvm From: Andrii Nakryiko Smtp-Origin-Hostname: devvm7221.prn2.facebook.com To: , , , , , , CC: Andrii Nakryiko Smtp-Origin-Cluster: prn2c23 Subject: [PATCH v2 bpf-next 0/2] tools/btf: extends libbpf APIs to work with btf w/o kernel Date: Tue, 5 Feb 2019 16:29:47 -0800 Message-ID: <20190206002949.1915237-1-andriin@fb.com> X-Mailer: git-send-email 2.17.1 X-FB-Internal: Safe MIME-Version: 1.0 Content-Type: text/plain X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2019-02-05_11:,, signatures=0 X-Proofpoint-Spam-Reason: safe X-FB-Internal: Safe Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org This patchset changes existing btf__new() API call to only load and initialize struct btf, while exposing new btf__load() API to attempt to load and validate BTF in kernel. It also adds ability to copy raw BTF data out of struct btf for further processing by external applications. This makes utilizing libbpf's APIs that don't require kernel facilities (e.g., btf_dedup) simpler and more natural from external application. v1->v2: - btf_load() returns just error, not fd - fix ordering in libbpf.map Andrii Nakryiko (2): btf: separate btf creation and loading btf: expose API to work with raw btf data tools/lib/bpf/btf.c | 63 +++++++++++++++++++++++++--------------- tools/lib/bpf/btf.h | 3 ++ tools/lib/bpf/libbpf.c | 2 +- tools/lib/bpf/libbpf.map | 3 ++ 4 files changed, 46 insertions(+), 25 deletions(-) -- 2.17.1