• Jesper Dangaard Brouer's avatar
    mlx5: more strict use of page_pool API · 29b006a6
    Jesper Dangaard Brouer authored
    The mlx5 driver is using page_pool, but not for DMA-mapping (currently), and
    is a little too relaxed about returning or releasing page resources, as it
    is not strictly necessary, when not using DMA-mappings.
    
    As this patchset is working towards tracking page_pool resources, to know
    about in-flight frames on shutdown. Then fix places where mlx5 leak
    page_pool resource.
    
    In case of dma_mapping_error, then recycle into page_pool.
    
    In mlx5e_free_rq() moved the page_pool_destroy() call to after the
    mlx5e_page_release() calls, as it is more correct.
    
    In mlx5e_page_release() when no recycle was requested, then release page
    from the page_pool, via page_pool_release_page().
    Signed-off-by: default avatarJesper Dangaard Brouer <brouer@redhat.com>
    Reviewed-by: default avatarTariq Toukan <tariqt@mellanox.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    29b006a6
en_rx.c 38.6 KB