Re: [PATCH net-next v9 7/8] netdevsim: use netmem descriptor and APIs for page pool
From: Mina Almasry <hidden>
Date: 2025-07-10 18:26:24
Also in:
bpf, linux-mm, linux-rdma, lkml
On Thu, Jul 10, 2025 at 1:28 AM Byungchul Park [off-list ref] wrote:
quoted hunk ↗ jump to hunk
To simplify struct page, the effort to separate its own descriptor from struct page is required and the work for page pool is on going. Use netmem descriptor and APIs for page pool in netdevsim code. Signed-off-by: Byungchul Park <byungchul@sk.com> --- drivers/net/netdevsim/netdev.c | 19 ++++++++++--------- drivers/net/netdevsim/netdevsim.h | 2 +- 2 files changed, 11 insertions(+), 10 deletions(-)diff --git a/drivers/net/netdevsim/netdev.c b/drivers/net/netdevsim/netdev.c index e36d3e846c2d..ba19870524c5 100644 --- a/drivers/net/netdevsim/netdev.c +++ b/drivers/net/netdevsim/netdev.c@@ -812,7 +812,7 @@ nsim_pp_hold_read(struct file *file, char __user *data, struct netdevsim *ns = file->private_data; char buf[3] = "n\n"; - if (ns->page) + if (ns->netmem) buf[0] = 'y'; return simple_read_from_buffer(data, count, ppos, buf, 2);@@ -832,18 +832,19 @@ nsim_pp_hold_write(struct file *file, const char __user *data, rtnl_lock(); ret = count; - if (val == !!ns->page) + if (val == !!ns->netmem) goto exit; if (!netif_running(ns->netdev) && val) { ret = -ENETDOWN; } else if (val) { - ns->page = page_pool_dev_alloc_pages(ns->rq[0]->page_pool); - if (!ns->page) + ns->netmem = page_pool_alloc_netmems(ns->rq[0]->page_pool, + GFP_ATOMIC | __GFP_NOWARN);
Add page_pool_dev_alloc_netmems helper. -- Thanks, Mina