[dpdk-dev] [PATCH RFC v1 0/7] relax barriers for ENA PMD and small fixes
Gavin Hu
gavin.hu at arm.com
Fri Mar 13 10:18:28 CET 2020
To ensure the stores to the host memory are observed by NIC HW before a
door bell ring to the NIC HW and the HW starts actions, for example,
doing DMA, a barrier is required on weak memory ordering platforms, like
aarch64.
However, unnecessarily too strong barriers like 'dsb' on aarch64 will
dampen performance.
In a typical doorbell use case, as NIC and CPU are in the outer sharable
domain, a lighter weight 'dmb osh' barrier is sufficient.
The patch set relaxes the barriers in similar places and include one
more patch for statistics logging with relaxed ordering and the other
patch removing duplicate memset.
Note this set is submitted for RFC as we don't have physical ENA NICs in
the lab and the patch set was not verified nor benchmarked.
Gavin Hu (7):
net/ena: remove duplicate barrier
net/ena: relax the barrier for doorbell ring
net/ena: relax the rmb for DMA
net/ena: relax barrier for completion queue update
net/ena: relax the barrier for bounce buffer
net/ena: use c11 atomic for statistics
net/ena: remove duplicate memset
drivers/net/ena/base/ena_eth_com.c | 2 +-
drivers/net/ena/base/ena_eth_com.h | 6 ++--
drivers/net/ena/base/ena_plat_dpdk.h | 2 +-
drivers/net/ena/ena_ethdev.c | 46 +++++++++++++++++-----------
drivers/net/ena/ena_ethdev.h | 8 ++---
5 files changed, 38 insertions(+), 26 deletions(-)
--
2.17.1
More information about the dev
mailing list