On Thu, Jul 10, 2025 at 1:28 AM Byungchul Park <byungchul@xxxxxx> wrote: > > To eliminate the use of struct page in page pool, the page pool code > should use netmem descriptor and APIs instead. > > As part of the work, introduce a netmem API to convert a virtual address > to a head netmem allowing the code to use it rather than the existing > API, virt_to_head_page() for struct page. > > Signed-off-by: Byungchul Park <byungchul@xxxxxx> > Reviewed-by: Toke Høiland-Jørgensen <toke@xxxxxxxxxx> > Reviewed-by: Pavel Begunkov <asml.silence@xxxxxxxxx> > Reviewed-by: Mina Almasry <almasrymina@xxxxxxxxxx> > --- > include/net/netmem.h | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/include/net/netmem.h b/include/net/netmem.h > index 283b4a997fbc..b92c7f15166a 100644 > --- a/include/net/netmem.h > +++ b/include/net/netmem.h > @@ -372,6 +372,13 @@ static inline bool page_pool_page_is_pp(struct page *page) > } > #endif > > +static inline netmem_ref virt_to_head_netmem(const void *x) > +{ > + netmem_ref netmem = virt_to_netmem(x); > + > + return netmem_compound_head(netmem); > +} > + Squash with the first user of this helper please. -- Thanks, Mina