All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/5] vhost: add missing barriers, remove useless volatiles
@ 2018-12-05  9:49 Maxime Coquelin
  2018-12-05  9:49 ` [PATCH 1/5] vhost: enforce avail index and desc read ordering Maxime Coquelin
                   ` (4 more replies)
  0 siblings, 5 replies; 21+ messages in thread
From: Maxime Coquelin @ 2018-12-05  9:49 UTC (permalink / raw)
  To: dev, jfreimann, tiwei.bie, zhihong.wang, jasowang; +Cc: Maxime Coquelin

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

^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2018-12-11 14:46 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-12-05  9:49 [PATCH 0/5] vhost: add missing barriers, remove useless volatiles Maxime Coquelin
2018-12-05  9:49 ` [PATCH 1/5] vhost: enforce avail index and desc read ordering Maxime Coquelin
2018-12-05 11:30   ` [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
2018-12-11 10:38   ` Ilya Maximets
2018-12-11 14:46     ` Maxime Coquelin
2018-12-05  9:49 ` [PATCH 2/5] vhost: enforce desc flags and content " Maxime Coquelin
2018-12-05 13:33   ` [2/5] " Ilya Maximets
2018-12-06  4:24     ` Jason Wang
2018-12-06 11:34       ` Ilya Maximets
2018-12-05  9:49 ` [PATCH 3/5] vhost: prefetch descriptor after the read barrier Maxime Coquelin
2018-12-05  9:49 ` [PATCH 4/5] vhost: remove useless prefetch for packed ring descriptor Maxime Coquelin
2018-12-05  9:49 ` [PATCH 5/5] vhost: remove useless casts to volatile Maxime Coquelin
2018-12-05 13:52   ` [5/5] " Ilya Maximets
2018-12-06 16:59     ` Maxime Coquelin
2018-12-07 11:16       ` Ilya Maximets

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.