diff options
| author | Jakub Kicinski <kuba@kernel.org> | 2025-09-01 14:12:13 -0700 | 
|---|---|---|
| committer | Paolo Abeni <pabeni@redhat.com> | 2025-09-04 10:19:17 +0200 | 
| commit | 3812339b6cc95602b5ee08ed1ffb34c21cb7d5e7 (patch) | |
| tree | 35c3b9d9e325a1d09c868cb134336df0299ab898 | |
| parent | 49c429ec6b624f35d506fdf759be28bf129da560 (diff) | |
eth: fbnic: don't pass NAPI into pp alloc
Queue API may ask us to allocate page pools when the device
is down, to validate that we ingested a memory provider binding.
Don't require NAPI to be passed to fbnic_alloc_qt_page_pools(),
to make calling fbnic_alloc_qt_page_pools() without NAPI possible.
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Link: https://patch.msgid.link/20250901211214.1027927-14-kuba@kernel.org
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
| -rw-r--r-- | drivers/net/ethernet/meta/fbnic/fbnic_txrx.c | 8 | 
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/net/ethernet/meta/fbnic/fbnic_txrx.c b/drivers/net/ethernet/meta/fbnic/fbnic_txrx.c index f5b83b6e1cc3..2e8ea3e01eba 100644 --- a/drivers/net/ethernet/meta/fbnic/fbnic_txrx.c +++ b/drivers/net/ethernet/meta/fbnic/fbnic_txrx.c @@ -1515,8 +1515,8 @@ void fbnic_free_napi_vectors(struct fbnic_net *fbn)  }  static int -fbnic_alloc_qt_page_pools(struct fbnic_net *fbn, struct fbnic_napi_vector *nv, -			  struct fbnic_q_triad *qt, unsigned int rxq_idx) +fbnic_alloc_qt_page_pools(struct fbnic_net *fbn, struct fbnic_q_triad *qt, +			  unsigned int rxq_idx)  {  	struct page_pool_params pp_params = {  		.order = 0, @@ -1524,7 +1524,7 @@ fbnic_alloc_qt_page_pools(struct fbnic_net *fbn, struct fbnic_napi_vector *nv,  			 PP_FLAG_DMA_SYNC_DEV,  		.pool_size = fbn->hpq_size + fbn->ppq_size,  		.nid = NUMA_NO_NODE, -		.dev = nv->dev, +		.dev = fbn->netdev->dev.parent,  		.dma_dir = DMA_BIDIRECTIONAL,  		.offset = 0,  		.max_len = PAGE_SIZE, @@ -1971,7 +1971,7 @@ static int fbnic_alloc_rx_qt_resources(struct fbnic_net *fbn,  	struct device *dev = fbn->netdev->dev.parent;  	int err; -	err = fbnic_alloc_qt_page_pools(fbn, nv, qt, qt->cmpl.q_idx); +	err = fbnic_alloc_qt_page_pools(fbn, qt, qt->cmpl.q_idx);  	if (err)  		return err;  | 
