linux/drivers/net/ethernet/amazon/ena
Sinan Kaya 6d2e1a8d5e net: ena: Eliminate duplicate barriers on weakly-ordered archs
Code includes barrier() 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.

Create a new wrapper function with relaxed write operator. Use the new
wrapper when a write is following a barrier().

Since code already has an explicit barrier call, changing writel() to
writel_relaxed() and adding mmiowb() for ordering protection.

Signed-off-by: Sinan Kaya <okaya@codeaurora.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2018-03-26 12:47:56 -04:00
..
Makefile
ena_admin_defs.h net: ena: add new admin define for future support of IPv6 RSS 2017-10-19 12:51:37 +01:00
ena_com.c net: ena: Eliminate duplicate barriers on weakly-ordered archs 2018-03-26 12:47:56 -04:00
ena_com.h net: ena: add reset reason for each device FLR 2017-06-23 14:15:09 -04:00
ena_common_defs.h
ena_eth_com.c net: ena: add detection and recovery mechanism for handling missed/misrouted MSI-X 2018-01-02 14:35:12 -05:00
ena_eth_com.h net: ena: Eliminate duplicate barriers on weakly-ordered archs 2018-03-26 12:47:56 -04:00
ena_eth_io_defs.h
ena_ethtool.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-10-22 13:39:14 +01:00
ena_netdev.c net: ena: Eliminate duplicate barriers on weakly-ordered archs 2018-03-26 12:47:56 -04:00
ena_netdev.h net: ena: increase ena driver version to 1.5.0 2018-01-02 14:35:12 -05:00
ena_pci_id_tbl.h
ena_regs_defs.h net: ena: add detection and recovery mechanism for handling missed/misrouted MSI-X 2018-01-02 14:35:12 -05:00