[v3,0/4] support async dequeue for split ring
Message ID | 20210928185641.86601-1-wenwux.ma@intel.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id DE944A0C46; Tue, 28 Sep 2021 09:04:31 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 5DBA340E3C; Tue, 28 Sep 2021 09:04:31 +0200 (CEST) Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by mails.dpdk.org (Postfix) with ESMTP id C38DA40DF6 for <dev@dpdk.org>; Tue, 28 Sep 2021 09:04:29 +0200 (CEST) X-IronPort-AV: E=McAfee;i="6200,9189,10120"; a="224700889" X-IronPort-AV: E=Sophos;i="5.85,328,1624345200"; d="scan'208";a="224700889" Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 28 Sep 2021 00:04:28 -0700 X-IronPort-AV: E=Sophos;i="5.85,328,1624345200"; d="scan'208";a="553820959" Received: from unknown (HELO localhost.localdomain) ([10.240.183.109]) by fmsmga003-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 28 Sep 2021 00:04:24 -0700 From: Wenwu Ma <wenwux.ma@intel.com> To: dev@dpdk.org Cc: maxime.coquelin@redhat.com, chenbo.xia@intel.com, cheng1.jiang@intel.com, jiayu.hu@intel.com, Sunil.Pai.G@intel.com, yvonnex.yang@intel.com, Wenwu Ma <wenwux.ma@intel.com> Date: Tue, 28 Sep 2021 18:56:37 +0000 Message-Id: <20210928185641.86601-1-wenwux.ma@intel.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20210906204837.112466-1-wenwux.ma@intel.com> References: <20210906204837.112466-1-wenwux.ma@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [PATCH v3 0/4] support async dequeue for split ring X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org Sender: "dev" <dev-bounces@dpdk.org> |
Message
Ma, WenwuX
Sept. 28, 2021, 6:56 p.m. UTC
This patch implements asynchronous dequeue data path for split ring. A new asynchronous dequeue function is introduced. With this function, the application can try to receive packets from the guest with offloading copies to the DMA engine, thus saving precious CPU cycles. v3: - Update release note. - Update function comments. v2: - Removed struct async_nethdr in 1/4. - Removed a useless function declaration in 2/4, and fixed some coding style in 4/4. Wenwu Ma (3): examples/vhost: refactor vhost enqueue and dequeue datapaths examples/vhost: use a new API to query remaining ring space examples/vhost: support vhost async dequeue data path Yuan Wang (1): vhost: support async dequeue for split ring doc/guides/prog_guide/vhost_lib.rst | 9 + doc/guides/rel_notes/release_21_11.rst | 3 + doc/guides/sample_app_ug/vhost.rst | 9 +- examples/vhost/ioat.c | 67 +++- examples/vhost/ioat.h | 25 ++ examples/vhost/main.c | 269 ++++++++----- examples/vhost/main.h | 34 +- examples/vhost/virtio_net.c | 16 +- lib/vhost/rte_vhost_async.h | 34 +- lib/vhost/version.map | 3 + lib/vhost/vhost.h | 3 +- lib/vhost/virtio_net.c | 530 +++++++++++++++++++++++++ 12 files changed, 881 insertions(+), 121 deletions(-)