Re: [PATCH net-next v6 3/5] page_pool: Allow drivers to hint on SKB recycling

From: Tariq Toukan
Date: Mon Jun 07 2021 - 07:14:21 EST

On 6/7/2021 7:38 AM, Ilias Apalodimas wrote:
Hi Tariq,

Yes the comment is there to prohibit people (mlx5 only actually) to add the
recycling bit on their driver. Because if they do it will *probably* work
but they might get random corrupted packets which will be hard to debug.

What's the complexity for getting it to work with split page model?
Since 1500 is the default MTU, requiring a page per packet means a lot
of wasted memory.

We could create a new memory model, e.g. MEM_TYPE_PAGE_SPLIT, and
restore the behavior present in the previous versions of this serie,
which is, save xdp_mem_info in struct page.
As this could slightly impact the performances, this can be added in a
future change when the drivers which are doing it want to use this
recycling api.

page-split model doesn't only help reduce memory waste, but increase
cache-locality, especially for aggregated GRO SKBs.

I'm looking forward to integrating the page-pool SKB recycling API into
mlx5e datapath. For this we need it to support the page-split model.

Let's see what's missing and how we can help making this happen.

Yes that's the final goal. As I said I don't think adding the page split
model will fundamentally change the current patchset. So imho we should
get this in first, make sure that everything is fine, and then add code for
the mlx cards.

Sounds good