mbox series

[net-next,0/3] add DMA sync capability to page_pool API

Message ID cover.1573383212.git.lorenzo@kernel.org
Headers show
Series add DMA sync capability to page_pool API | expand

Message

Lorenzo Bianconi Nov. 10, 2019, 12:09 p.m. UTC
Introduce the possibility to sync DMA memory in the page_pool API for
non-coherent devices. This feature allows to sync proper DMA size and
not always full buffer (dma_sync_single_for_device can be very costly).
Relying on page_pool DMA sync mvneta driver improves XDP_DROP pps of
about 180Kpps:

- XDP_DROP DMA sync managed by mvneta driver:	~420Kpps
- XDP_DROP DMA sync managed by page_pool API:	~595Kpps

Lorenzo Bianconi (3):
  net: mvneta: rely on page_pool_recycle_direct in mvneta_run_xdp
  net: page_pool: add the possibility sync dma memory for non-coherent
    devices
  net: mvneta: get rid of huge dma sync in mvneta_rx_refill

 drivers/net/ethernet/marvell/mvneta.c | 23 ++++++++++------
 include/net/page_pool.h               | 11 +++++---
 net/core/page_pool.c                  | 39 ++++++++++++++++++++++-----
 3 files changed, 55 insertions(+), 18 deletions(-)