summaryrefslogtreecommitdiffstats
path: root/drivers/misc/vmw_vmci/vmci_driver.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2019-11-20 12:34:37 -0800
committerDavid S. Miller <davem@davemloft.net>2019-11-20 12:34:37 -0800
commite07e75412ba4a8e68f47de345da53847f343f337 (patch)
tree652f59998ff9dcb329f619c27fcae1aea50bd105 /drivers/misc/vmw_vmci/vmci_driver.c
parentcec2975f2b7058c42330a0f8164d94c6b7c8c446 (diff)
parent07e13edbb6a6a9a407d6772a355836270e924aa8 (diff)
Merge branch 'page_pool-DMA-sync'
Lorenzo Bianconi says: ==================== add DMA-sync-for-device capability to page_pool API Introduce the possibility to sync DMA memory for device in the page_pool API. This feature allows to sync proper DMA size and not always full buffer (dma_sync_single_for_device can be very costly). Please note DMA-sync-for-CPU is still device driver responsibility. Relying on page_pool DMA sync mvneta driver improves XDP_DROP pps of about 170Kpps: - XDP_DROP DMA sync managed by mvneta driver: ~420Kpps - XDP_DROP DMA sync managed by page_pool API: ~585Kpps Do not change naming convention for the moment since the changes will hit other drivers as well. I will address it in another series. Changes since v4: - do not allow the driver to set max_len to 0 - convert PP_FLAG_DMA_MAP/PP_FLAG_DMA_SYNC_DEV to BIT() macro Changes since v3: - move dma_sync_for_device before putting the page in ptr_ring in __page_pool_recycle_into_ring since ptr_ring can be consumed concurrently. Simplify the code moving dma_sync_for_device before running __page_pool_recycle_direct/__page_pool_recycle_into_ring Changes since v2: - rely on PP_FLAG_DMA_SYNC_DEV flag instead of dma_sync Changes since v1: - rename sync in dma_sync - set dma_sync_size to 0xFFFFFFFF in page_pool_recycle_direct and page_pool_put_page routines - Improve documentation ==================== Acked-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/misc/vmw_vmci/vmci_driver.c')
0 files changed, 0 insertions, 0 deletions