Re: [dpdk-dev] [PATCH] net/mlx5: fix Tx doorbell memory barrier

2017-10-23 Thread Nélio Laranjeiro
On Mon, Oct 23, 2017 at 10:24:09AM -0700, Yongseok Koh wrote: > On Mon, Oct 23, 2017 at 09:50:14AM +0200, Nélio Laranjeiro wrote: > > Yongseok, Sagi, my small contribution to this discussion, > > > > On Sun, Oct 22, 2017 at 03:01:04PM -0700, Yongseok Koh wrote: > > > On Sun, Oct 22, 2017 at 12:46:

Re: [dpdk-dev] [PATCH] net/mlx5: fix Tx doorbell memory barrier

2017-10-23 Thread Yongseok Koh
On Mon, Oct 23, 2017 at 09:50:14AM +0200, Nélio Laranjeiro wrote: > Yongseok, Sagi, my small contribution to this discussion, > > On Sun, Oct 22, 2017 at 03:01:04PM -0700, Yongseok Koh wrote: > > On Sun, Oct 22, 2017 at 12:46:53PM +0300, Sagi Grimberg wrote: > > > > > > > Configuring UAR as IO-ma

Re: [dpdk-dev] [PATCH] net/mlx5: fix Tx doorbell memory barrier

2017-10-23 Thread Nélio Laranjeiro
Yongseok, Sagi, my small contribution to this discussion, On Sun, Oct 22, 2017 at 03:01:04PM -0700, Yongseok Koh wrote: > On Sun, Oct 22, 2017 at 12:46:53PM +0300, Sagi Grimberg wrote: > > > > > Configuring UAR as IO-mapped makes maximum throughput decline by > > > noticeable > > > amount. If UA

Re: [dpdk-dev] [PATCH] net/mlx5: fix Tx doorbell memory barrier

2017-10-23 Thread Nélio Laranjeiro
On Sun, Oct 22, 2017 at 01:00:22AM -0700, Yongseok Koh wrote: >[...] > --- a/drivers/net/mlx5/mlx5_rxtx.h > +++ b/drivers/net/mlx5/mlx5_rxtx.h > @@ -584,9 +584,11 @@ mlx5_tx_mb2mr(struct mlx5_txq_data *txq, struct rte_mbuf > *mb) > * Pointer to TX queue structure. > * @param wqe > * Poin

Re: [dpdk-dev] [PATCH] net/mlx5: fix Tx doorbell memory barrier

2017-10-22 Thread Yongseok Koh
On Sun, Oct 22, 2017 at 12:46:53PM +0300, Sagi Grimberg wrote: > > > Configuring UAR as IO-mapped makes maximum throughput decline by noticeable > > amount. If UAR is configured as write-combining register, a write memory > > barrier is needed on ringing a doorbell. rte_wmb() is mostly effective w

Re: [dpdk-dev] [PATCH] net/mlx5: fix Tx doorbell memory barrier

2017-10-22 Thread Sagi Grimberg
Configuring UAR as IO-mapped makes maximum throughput decline by noticeable amount. If UAR is configured as write-combining register, a write memory barrier is needed on ringing a doorbell. rte_wmb() is mostly effective when the size of a burst is comparatively small. Personally I don't think

[dpdk-dev] [PATCH] net/mlx5: fix Tx doorbell memory barrier

2017-10-22 Thread Yongseok Koh
Configuring UAR as IO-mapped makes maximum throughput decline by noticeable amount. If UAR is configured as write-combining register, a write memory barrier is needed on ringing a doorbell. rte_wmb() is mostly effective when the size of a burst is comparatively small. Fixes: 9f9bebae5530 ("net/mlx