From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 9DE6DA034E; Wed, 27 May 2020 16:17:11 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 052311D994; Wed, 27 May 2020 16:17:11 +0200 (CEST) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by dpdk.org (Postfix) with ESMTP id 6D5F41D992 for ; Wed, 27 May 2020 16:17:09 +0200 (CEST) IronPort-SDR: 9/gWPlUM4HTiqIvO8DYmn2knLfcuj5FHYIOE4pwIdymE9Sfh5EfwuCwcxcxUT6+oFoI/qnmKB+ GJxhDKLx1k9g== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 May 2020 07:17:08 -0700 IronPort-SDR: 9nvc5aVt36DTJutlXbC4/LNUnC5KqLOZRyRZEyTwPjOhXAdjJhMH17cf+YN8MRA5UIEHAKPATO I2o8e0SB1NnQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,441,1583222400"; d="scan'208";a="291608772" Received: from sivswdev08.ir.intel.com ([10.237.217.47]) by fmsmga004.fm.intel.com with ESMTP; 27 May 2020 07:17:07 -0700 From: Konstantin Ananyev To: dev@dpdk.org Cc: jerinj@marvell.com, stephen@networkplumber.org, mb@smartsharesystems.com, Konstantin Ananyev Date: Wed, 27 May 2020 15:16:48 +0100 Message-Id: <20200527141653.15576-1-konstantin.ananyev@intel.com> X-Mailer: git-send-email 2.18.0 In-Reply-To: <20200518155245.11380-1-konstantin.ananyev@intel.com> References: <20200518155245.11380-1-konstantin.ananyev@intel.com> Subject: [dpdk-dev] [PATCH v2 0/5] bpf: add support for BPF_ABS/BPF_IND instructions X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" To fill the gap with linux kernel eBPF implementation, add support for two non-generic instructions: (BPF_ABS | | BPF_LD) and (BPF_IND | | BPF_LD) which are used to access packet data in a safe manner. Make necessary changes in BPF verifier, interpreter and x86 JIT code. Konstantin Ananyev (5): test/bpf: fix few small issues bpf: fix add/sub min/max estimations bpf: add support for packet data load instructions test/bpf: add new test cases for mbuf load instructions bpf: x86 JIT support for packet data load instructions app/test/test_bpf.c | 504 +++++++++++++++++++++++-- doc/guides/prog_guide/bpf_lib.rst | 30 +- doc/guides/rel_notes/release_20_08.rst | 7 + lib/librte_bpf/bpf_exec.c | 57 +++ lib/librte_bpf/bpf_jit_x86.c | 181 +++++++++ lib/librte_bpf/bpf_validate.c | 104 ++++- 6 files changed, 850 insertions(+), 33 deletions(-) -- 2.17.1