linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/7] i40e/i40evf: Eliminate duplicate barriers on weakly-ordered archs
@ 2018-03-14  3:20 Sinan Kaya
  2018-03-14  3:20 ` [PATCH 2/7] ixgbe: eliminate " Sinan Kaya
                   ` (5 more replies)
  0 siblings, 6 replies; 28+ messages in thread
From: Sinan Kaya @ 2018-03-14  3:20 UTC (permalink / raw)
  To: netdev, timur, sulrich
  Cc: linux-arm-msm, linux-arm-kernel, Sinan Kaya, Jeff Kirsher,
	intel-wired-lan, linux-kernel

Code includes wmb() followed by writel(). writel() already has a barrier
on some architectures like arm64.

This ends up CPU observing two barriers back to back before executing the
register write.

Since code already has an explicit barrier call, changing writel() to
writel_relaxed().

Signed-off-by: Sinan Kaya <okaya@codeaurora.org>
---
 drivers/net/ethernet/intel/i40e/i40e_txrx.c   | 2 +-
 drivers/net/ethernet/intel/i40evf/i40e_txrx.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/ethernet/intel/i40e/i40e_txrx.c b/drivers/net/ethernet/intel/i40e/i40e_txrx.c
index e554aa6cf..7028516 100644
--- a/drivers/net/ethernet/intel/i40e/i40e_txrx.c
+++ b/drivers/net/ethernet/intel/i40e/i40e_txrx.c
@@ -1375,7 +1375,7 @@ static inline void i40e_release_rx_desc(struct i40e_ring *rx_ring, u32 val)
 	 * such as IA-64).
 	 */
 	wmb();
-	writel(val, rx_ring->tail);
+	writel_relaxed(val, rx_ring->tail);
 }
 
 /**
diff --git a/drivers/net/ethernet/intel/i40evf/i40e_txrx.c b/drivers/net/ethernet/intel/i40evf/i40e_txrx.c
index 357d605..2d323fc 100644
--- a/drivers/net/ethernet/intel/i40evf/i40e_txrx.c
+++ b/drivers/net/ethernet/intel/i40evf/i40e_txrx.c
@@ -667,7 +667,7 @@ static inline void i40e_release_rx_desc(struct i40e_ring *rx_ring, u32 val)
 	 * such as IA-64).
 	 */
 	wmb();
-	writel(val, rx_ring->tail);
+	writel_relaxed(val, rx_ring->tail);
 }
 
 /**
-- 
2.7.4

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

end of thread, other threads:[~2018-03-16  0:51 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-03-14  3:20 [PATCH 1/7] i40e/i40evf: Eliminate duplicate barriers on weakly-ordered archs Sinan Kaya
2018-03-14  3:20 ` [PATCH 2/7] ixgbe: eliminate " Sinan Kaya
2018-03-15  1:47   ` Alexander Duyck
2018-03-14  3:20 ` [PATCH 3/7] RDMA/qedr: " Sinan Kaya
2018-03-14  4:12   ` Jason Gunthorpe
2018-03-14 12:06     ` okaya
2018-03-15 22:23   ` Jason Gunthorpe
2018-03-14  3:20 ` [PATCH 4/7] igbvf: " Sinan Kaya
2018-03-15  1:48   ` Alexander Duyck
2018-03-14  3:20 ` [PATCH 5/7] igb: " Sinan Kaya
2018-03-15  1:50   ` Alexander Duyck
2018-03-14  3:20 ` [PATCH 6/7] e1000: " Sinan Kaya
2018-03-15  1:41   ` Alexander Duyck
2018-03-15 23:30     ` Sinan Kaya
2018-03-16  0:25       ` Alexander Duyck
2018-03-16  0:50         ` Sinan Kaya
2018-03-14  3:20 ` [PATCH 7/7] ixgbevf: " Sinan Kaya
2018-03-14  5:08   ` Timur Tabi
2018-03-14 12:13     ` okaya
2018-03-14 21:49       ` Alexander Duyck
2018-03-14 22:57         ` Sinan Kaya
2018-03-15  1:44           ` Alexander Duyck
2018-03-15  2:17             ` Sinan Kaya
2018-03-15 14:32               ` Alexander Duyck
2018-03-15 16:21                 ` Sinan Kaya
2018-03-15 16:27                   ` Sinan Kaya
2018-03-15 16:58                     ` Alexander Duyck
2018-03-15  1:45   ` Alexander Duyck

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).