Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

eth: bnxt: always set the queue mgmt ops

Core provides a centralized callback for validating per-queue settings
but the callback is part of the queue management ops. Having the ops
conditionally set complicates the parts of the driver which could
otherwise lean on the core to feed it the correct settings.

Always set the queue ops, but provide no restart-related callbacks if
queue ops are not supported by the device. This should maintain current
behavior, the check in netdev_rx_queue_restart() looks both at op struct
and individual ops.

Reviewed-by: Subbaraya Sundeep <sbhatta@marvell.com>
Link: https://patch.msgid.link/20260122005113.2476634-2-kuba@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>

+5 -1
+5 -1
drivers/net/ethernet/broadcom/bnxt/bnxt.c
··· 16314 16314 .supported_params = QCFG_RX_PAGE_SIZE, 16315 16315 }; 16316 16316 16317 + static const struct netdev_queue_mgmt_ops bnxt_queue_mgmt_ops_unsupp = { 16318 + }; 16319 + 16317 16320 static void bnxt_remove_one(struct pci_dev *pdev) 16318 16321 { 16319 16322 struct net_device *dev = pci_get_drvdata(pdev); ··· 16969 16966 16970 16967 if (BNXT_SUPPORTS_NTUPLE_VNIC(bp)) 16971 16968 bp->rss_cap |= BNXT_RSS_CAP_MULTI_RSS_CTX; 16969 + 16970 + dev->queue_mgmt_ops = &bnxt_queue_mgmt_ops_unsupp; 16972 16971 if (BNXT_SUPPORTS_QUEUE_API(bp)) 16973 16972 dev->queue_mgmt_ops = &bnxt_queue_mgmt_ops; 16974 - dev->request_ops_lock = true; 16975 16973 dev->netmem_tx = true; 16976 16974 16977 16975 rc = register_netdev(dev);