From patchwork Wed Dec 19 08:21:09 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxime Coquelin X-Patchwork-Id: 49107 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 117611B6D1; Wed, 19 Dec 2018 09:21:27 +0100 (CET) Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by dpdk.org (Postfix) with ESMTP id B6FA31B674; Wed, 19 Dec 2018 09:21:25 +0100 (CET) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 4EC9C1B98; Wed, 19 Dec 2018 08:21:24 +0000 (UTC) Received: from localhost.localdomain (ovpn-112-26.ams2.redhat.com [10.36.112.26]) by smtp.corp.redhat.com (Postfix) with ESMTP id B828A17DD3; Wed, 19 Dec 2018 08:21:16 +0000 (UTC) From: Maxime Coquelin To: dev@dpdk.org, i.maximets@samsung.com, tiwei.bie@intel.com, zhihong.wang@intel.com, jasowang@redhat.com, mst@redhat.com Cc: stable@dpdk.org, Maxime Coquelin Date: Wed, 19 Dec 2018 09:21:09 +0100 Message-Id: <20181219082113.24455-1-maxime.coquelin@redhat.com> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.30]); Wed, 19 Dec 2018 08:21:24 +0000 (UTC) Subject: [dpdk-dev] [PATCH v2 0/4] vhost: add missing barriers, move prefetching 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" This series adds missing read barriers after reading avail index for split ring and desc flags for packed ring. Also, it turns out that some descriptors prefetching are either badly placed, or useless, last part of the series fixes that. With the series applied, I get between 0 and 4% gain depending on the benchmark (testpmd txonly/rxonly/io). Thanks to Jason for reporting the missing read barriers. Changes since v1: ================= - Drop volatile removal patch (Ilya) - Improve commit messages for RMB patches (Ilya) Maxime Coquelin (4): vhost: enforce avail index and desc read ordering vhost: enforce desc flags and content read ordering vhost: prefetch descriptor after the read barrier vhost: remove useless prefetch for packed ring descriptor lib/librte_vhost/virtio_net.c | 27 ++++++++++++++++++++++----- 1 file changed, 22 insertions(+), 5 deletions(-) Acked-by: Michael S. Tsirkin Acked-by: Tiwei Bie