Subject: Re: [PATCH net-next v3 03/14] libeth: allow to create fill queues without NAPI

From: Jakub Kicinski <[email-masked]>
Date: Wed, 20 May 2026 18:49:22 -0700

On Fri, 15 May 2026 15:44:27 -0700 Tony Nguyen wrote:
> +int libeth_rx_fq_create(struct libeth_fq *fq, void *napi_dev)

Why do you have to pass an opaque void pointer?
Just add another arg for dev.

 int libeth_rx_fq_create(struct libeth_fq *fq, struct napi_struct *napi,
			 struct device *dev)
 {
 	struct page_pool_params pp = {
 		.flags		= PP_FLAG_DMA_MAP | PP_FLAG_DMA_SYNC_DEV,
 		.order		= LIBETH_RX_PAGE_ORDER,
 		.pool_size	= fq->count,
 		.nid		= fq->nid,
-		.dev		= napi->dev->dev.parent,
-		.netdev		= napi->dev,
+		.dev		= dev ? dev : napi->dev->dev.parent,
+		.netdev		= napi ? napi->dev : NULL,