Messages in this thread | | | Subject | Re: [PATCH net-next] sh_eth: remove open coded netif_running() | From | Sergey Shtylyov <> | Date | Wed, 22 Mar 2023 23:54:42 +0300 |
| |
On 3/21/23 9:58 AM, Wolfram Sang wrote:
> It had a purpose back in the days, but today we have a handy helper.
Well, the is_opened flag doesn't get set/cleared at the same time as __LINK_STATE_START. I'm not sure they are interchangeable...
> Reported-by: Geert Uytterhoeven <geert+renesas@glider.be> > Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com> > --- > > Based on 6.3-rc3 and tested on a Renesas Lager board (R-Car H2). > > drivers/net/ethernet/renesas/sh_eth.c | 6 +----- > drivers/net/ethernet/renesas/sh_eth.h | 1 - > 2 files changed, 1 insertion(+), 6 deletions(-) > > diff --git a/drivers/net/ethernet/renesas/sh_eth.c b/drivers/net/ethernet/renesas/sh_eth.c > index d8ec729825be..2d9787231099 100644 > --- a/drivers/net/ethernet/renesas/sh_eth.c > +++ b/drivers/net/ethernet/renesas/sh_eth.c > @@ -2441,8 +2441,6 @@ static int sh_eth_open(struct net_device *ndev) > > netif_start_queue(ndev); > > - mdp->is_opened = 1; > -
__LINK_STATE_START gets set before the ndo_open() method call, so before the RPM call that enbales the clocks...
> return ret; > > out_free_irq: > @@ -2565,7 +2563,7 @@ static struct net_device_stats *sh_eth_get_stats(struct net_device *ndev) > if (mdp->cd->no_tx_cntrs) > return &ndev->stats; > > - if (!mdp->is_opened) > + if (!netif_running(ndev)) > return &ndev->stats;
I guess mdp->is_opened is checked here to avoid reading the counter regs when RPM hasn't been called yet to enable the clocks...
[...]
MBR, Sergey
| |