On Mon, Oct 7, 2024 at 3:16 PM David Wei <dw@xxxxxxxxxxx> wrote: > > From: Pavel Begunkov <asml.silence@xxxxxxxxx> > > Add a helper that takes an array of pages and initialises passed in > memory provider's area with them, where each net_iov takes one page. > It's also responsible for setting up dma mappings. > > We keep it in page_pool.c not to leak netmem details to outside > providers like io_uring, which don't have access to netmem_priv.h > and other private helpers. > Initial feeling is that this belongs somewhere in the provider. The functions added here don't seem generically useful to the page pool to be honest. The challenge seems to be netmem/net_iov dependencies. The only thing I see you're calling is net_iov_to_netmem() and friends. Are these the issue? I think these are in netmem.h actually. Consider including that in the provider implementation, if it makes sense to you. -- Thanks, Mina