DPDK patches and discussions
 help / color / mirror / Atom feed
From: Maxime Coquelin <maxime.coquelin@redhat.com>
To: dev@dpdk.org, jfreimann@redhat.com, tiwei.bie@intel.com,
	zhihong.wang@intel.com, jasowang@redhat.com
Cc: Maxime Coquelin <maxime.coquelin@redhat.com>
Subject: [dpdk-dev] [PATCH 0/5] vhost: add missing barriers, remove useless volatiles
Date: Wed,  5 Dec 2018 10:49:52 +0100	[thread overview]
Message-ID: <20181205094957.1938-1-maxime.coquelin@redhat.com> (raw)

This series adds missing read barriers after reading avail index
for split ring and desc flags for packed ring.

Once that fixed, the casts to volatile are useless and so removed.

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.

Maxime Coquelin (5):
  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
  vhost: remove useless casts to volatile

 lib/librte_vhost/virtio_net.c | 32 ++++++++++++++++++++++++--------
 1 file changed, 24 insertions(+), 8 deletions(-)

-- 
2.17.2

             reply	other threads:[~2018-12-05  9:50 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-12-05  9:49 Maxime Coquelin [this message]
2018-12-05  9:49 ` [dpdk-dev] [PATCH 1/5] vhost: enforce avail index and desc read ordering Maxime Coquelin
     [not found]   ` <CGME20181205113041eucas1p1943b9c13af2fb5b736ba4906b59a9cd5@eucas1p1.samsung.com>
2018-12-05 11:30     ` [dpdk-dev] [1/5] " Ilya Maximets
2018-12-06  4:17       ` Jason Wang
2018-12-06 12:48         ` Ilya Maximets
2018-12-06 13:25           ` Jason Wang
2018-12-06 13:48         ` Michael S. Tsirkin
2018-12-07 14:58           ` Ilya Maximets
2018-12-07 15:44             ` Michael S. Tsirkin
     [not found]   ` <CGME20181211103848eucas1p10c270ca8997fea8a2f55c2d94d02baea@eucas1p1.samsung.com>
2018-12-11 10:38     ` Ilya Maximets
2018-12-11 14:46       ` Maxime Coquelin
2018-12-05  9:49 ` [dpdk-dev] [PATCH 2/5] vhost: enforce desc flags and content " Maxime Coquelin
     [not found]   ` <CGME20181205133332eucas1p195b3864ed146403e314d7004d27be285@eucas1p1.samsung.com>
2018-12-05 13:33     ` [dpdk-dev] [2/5] " Ilya Maximets
2018-12-06  4:24       ` Jason Wang
2018-12-06 11:34         ` Ilya Maximets
2018-12-05  9:49 ` [dpdk-dev] [PATCH 3/5] vhost: prefetch descriptor after the read barrier Maxime Coquelin
2018-12-05  9:49 ` [dpdk-dev] [PATCH 4/5] vhost: remove useless prefetch for packed ring descriptor Maxime Coquelin
2018-12-05  9:49 ` [dpdk-dev] [PATCH 5/5] vhost: remove useless casts to volatile Maxime Coquelin
     [not found]   ` <CGME20181205135231eucas1p1c89281f6525a0fedab4a2fc0d2e21393@eucas1p1.samsung.com>
2018-12-05 13:52     ` [dpdk-dev] [5/5] " Ilya Maximets
2018-12-06 16:59       ` Maxime Coquelin
2018-12-07 11:16         ` Ilya Maximets

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20181205094957.1938-1-maxime.coquelin@redhat.com \
    --to=maxime.coquelin@redhat.com \
    --cc=dev@dpdk.org \
    --cc=jasowang@redhat.com \
    --cc=jfreimann@redhat.com \
    --cc=tiwei.bie@intel.com \
    --cc=zhihong.wang@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).