From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752752AbcFZLXT (ORCPT ); Sun, 26 Jun 2016 07:23:19 -0400 Received: from szxga04-in.huawei.com ([58.251.152.52]:21417 "EHLO szxga04-in.huawei.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1752616AbcFZLWR (ORCPT ); Sun, 26 Jun 2016 07:22:17 -0400 From: He Kuang To: , , , , , , , , CC: Subject: [RFC PATCH v2 16/26] perf bpf: Add method for fetching nth ubpf vm Date: Sun, 26 Jun 2016 11:21:08 +0000 Message-ID: <1466940078-65581-17-git-send-email-hekuang@huawei.com> X-Mailer: git-send-email 1.8.3.4 In-Reply-To: <1466940078-65581-1-git-send-email-hekuang@huawei.com> References: <1466940078-65581-1-git-send-email-hekuang@huawei.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [10.107.193.250] X-CFilter-Loop: Reflected X-Mirapoint-Virus-RAPID-Raw: score=unknown(0), refid=str=0001.0A090205.576FBAD2.0053,ss=1,re=0.000,recu=0.000,reip=0.000,cl=1,cld=1,fgs=0, ip=0.0.0.0, so=2014-11-16 11:51:01, dmn=2013-03-21 17:37:32 X-Mirapoint-Loop-Id: cbe51fb38f28bcb032b0a35420563476 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Same as bpf_program__fd() and bpf_program__nth_fd(), add methods for fetching the nth ubpf entry. Signed-off-by: He Kuang Signed-off-by: Wang Nan --- tools/lib/bpf/libbpf.c | 14 ++++++++++++++ tools/lib/bpf/libbpf.h | 1 + 2 files changed, 15 insertions(+) diff --git a/tools/lib/bpf/libbpf.c b/tools/lib/bpf/libbpf.c index b738ef2..7e77cc2 100644 --- a/tools/lib/bpf/libbpf.c +++ b/tools/lib/bpf/libbpf.c @@ -1132,6 +1132,20 @@ int bpf_program__fd(struct bpf_program *prog) return bpf_program__nth_fd(prog, 0); } +static void *bpf_program__nth_vm(struct bpf_program *prog, int n) +{ + void *ret; + + prog->engine->get_nth(prog, n, &ret); + + return ret; +} + +void *bpf_program__vm(struct bpf_program *prog) +{ + return bpf_program__nth_vm(prog, 0); +} + int bpf_program__set_prep(struct bpf_program *prog, int nr_instances, bpf_program_prep_t prep) { diff --git a/tools/lib/bpf/libbpf.h b/tools/lib/bpf/libbpf.h index 996862f..b0e6c68 100644 --- a/tools/lib/bpf/libbpf.h +++ b/tools/lib/bpf/libbpf.h @@ -87,6 +87,7 @@ void *bpf_program__priv(struct bpf_program *prog); const char *bpf_program__title(struct bpf_program *prog, bool needs_copy); int bpf_program__fd(struct bpf_program *prog); +void *bpf_program__vm(struct bpf_program *prog); struct bpf_insn; -- 1.8.5.2