[PATCH net-next v3 13/23] net: pass extack to netdev_rx_queue_restart()
From: Pavel Begunkov <asml.silence@gmail.com>
Date: 2025-08-18 13:56:55
Also in:
io-uring, lkml
Subsystem:
broadcom bnxt_en 50 gigabit ethernet driver, netdevsim, networking drivers, networking [general], the rest · Maintainers:
Michael Chan, Pavan Chebbi, Jakub Kicinski, Andrew Lunn, "David S. Miller", Eric Dumazet, Paolo Abeni, Linus Torvalds
From: Jakub Kicinski <kuba@kernel.org> Pass extack to netdev_rx_queue_restart(). Subsequent change will need it. Signed-off-by: Jakub Kicinski <kuba@kernel.org> Signed-off-by: Pavel Begunkov <asml.silence@gmail.com> --- drivers/net/ethernet/broadcom/bnxt/bnxt.c | 2 +- drivers/net/netdevsim/netdev.c | 2 +- include/net/netdev_rx_queue.h | 3 ++- net/core/netdev_rx_queue.c | 7 ++++--- 4 files changed, 8 insertions(+), 6 deletions(-)
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
index 48ff6f024e07..4cb92267251d 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c@@ -11544,7 +11544,7 @@ static void bnxt_irq_affinity_notify(struct irq_affinity_notify *notify, netdev_lock(irq->bp->dev); if (netif_running(irq->bp->dev)) { - err = netdev_rx_queue_restart(irq->bp->dev, irq->ring_nr); + err = netdev_rx_queue_restart(irq->bp->dev, irq->ring_nr, NULL); if (err) netdev_err(irq->bp->dev, "RX queue restart failed: err=%d\n", err);
diff --git a/drivers/net/netdevsim/netdev.c b/drivers/net/netdevsim/netdev.c
index 985c3403ec57..919088822159 100644
--- a/drivers/net/netdevsim/netdev.c
+++ b/drivers/net/netdevsim/netdev.c@@ -869,7 +869,7 @@ nsim_qreset_write(struct file *file, const char __user *data, } ns->rq_reset_mode = mode; - ret = netdev_rx_queue_restart(ns->netdev, queue); + ret = netdev_rx_queue_restart(ns->netdev, queue, NULL); ns->rq_reset_mode = 0; if (ret) goto exit_unlock;
diff --git a/include/net/netdev_rx_queue.h b/include/net/netdev_rx_queue.h
index 8cdcd138b33f..a7def1f94823 100644
--- a/include/net/netdev_rx_queue.h
+++ b/include/net/netdev_rx_queue.h@@ -56,6 +56,7 @@ get_netdev_rx_queue_index(struct netdev_rx_queue *queue) return index; } -int netdev_rx_queue_restart(struct net_device *dev, unsigned int rxq); +int netdev_rx_queue_restart(struct net_device *dev, unsigned int rxq, + struct netlink_ext_ack *extack); #endif
diff --git a/net/core/netdev_rx_queue.c b/net/core/netdev_rx_queue.c
index fb87ce219a8a..420b956a40e4 100644
--- a/net/core/netdev_rx_queue.c
+++ b/net/core/netdev_rx_queue.c@@ -10,7 +10,8 @@ #include "dev.h" #include "page_pool_priv.h" -int netdev_rx_queue_restart(struct net_device *dev, unsigned int rxq_idx) +int netdev_rx_queue_restart(struct net_device *dev, unsigned int rxq_idx, + struct netlink_ext_ack *extack) { struct netdev_rx_queue *rxq = __netif_get_rx_queue(dev, rxq_idx); const struct netdev_queue_mgmt_ops *qops = dev->queue_mgmt_ops;
@@ -134,7 +135,7 @@ int __net_mp_open_rxq(struct net_device *dev, unsigned int rxq_idx, #endif rxq->mp_params = *p; - ret = netdev_rx_queue_restart(dev, rxq_idx); + ret = netdev_rx_queue_restart(dev, rxq_idx, extack); if (ret) { rxq->mp_params.mp_ops = NULL; rxq->mp_params.mp_priv = NULL;
@@ -177,7 +178,7 @@ void __net_mp_close_rxq(struct net_device *dev, unsigned int ifq_idx, rxq->mp_params.mp_ops = NULL; rxq->mp_params.mp_priv = NULL; - err = netdev_rx_queue_restart(dev, ifq_idx); + err = netdev_rx_queue_restart(dev, ifq_idx, NULL); WARN_ON(err && err != -ENETDOWN); }
--
2.49.0