Subject: Re: [PATCH net] net: stmmac: remove disable_irq() from ->ndo_poll_controller()

From: Remi Pommarel <[email-masked]>
Date: Tue, 22 Aug 2023 16:48:29 +0200

On Fri, Aug 11, 2023 at 06:20:25PM -0700, Jakub Kicinski wrote:
> On Thu, 10 Aug 2023 10:37:16 +0200 Remi Pommarel wrote:
> > diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
> > index 4727f7be4f86..bbe509abc5dc 100644
> > --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
> > +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
> > @@ -5958,8 +5958,8 @@ static void stmmac_poll_controller(struct net_device *dev)
> >  		for (i = 0; i < priv->plat->tx_queues_to_use; i++)
> >  			stmmac_msi_intr_tx(0, &priv->dma_conf.tx_queue[i]);
> >  	} else {
> > -		disable_irq(dev->irq);
> > -		stmmac_interrupt(dev->irq, dev);
> > +		if (disable_hardirq(dev->irq))
> > +			stmmac_interrupt(dev->irq, dev);
> >  		enable_irq(dev->irq);
> 
> Implementing .ndo_poll_controller is only needed if driver doesn't use
> NAPI. This driver seems to use NAPI on all paths, AFAICT you can simply
> delete this function completely.

Looks like since [0] you are right. Will send a new PATCH removing
stmmac_poll_controller.

Thanks.

[0]: ac3d9dd034e5 ("netpoll: make ndo_poll_controller() optional")

-- 
Remi