Messages in this thread | | | Date | Fri, 3 Jan 2020 15:59:11 +0100 | From | Michal Kubecek <> | Subject | Re: [PATCH] net: 3com: 3c59x: remove set but not used variable 'mii_reg1' |
| |
On Fri, Jan 03, 2020 at 06:46:23AM -0800, Matthew Wilcox wrote: > On Fri, Jan 03, 2020 at 08:19:07PM +0800, yu kuai wrote: > > Fixes gcc '-Wunused-but-set-variable' warning: > > > > drivers/net/ethernet/3com/3c59x.c: In function ‘vortex_up’: > > drivers/net/ethernet/3com/3c59x.c:1551:9: warning: variable > > ‘mii_reg1’ set but not used [-Wunused-but-set-variable] > > > > It is never used, and so can be removed. > ... > > if (dev->if_port == XCVR_MII || dev->if_port == XCVR_NWAY) { > > - mii_reg1 = mdio_read(dev, vp->phys[0], MII_BMSR); > > mii_reg5 = mdio_read(dev, vp->phys[0], MII_LPA); > > I know nothing about the MII interface, but in general this is not > a safe thing to do. You're removing a read from a device register. > Register reads can have side effects. I'm actually quite surprised > that GCC emits this warning, since there should be some kind of > volatile cast in mdio_read() to let GCC know that something unusual > is going on here.
Removing the call may be wrong (and certainly isn't obviously correct) but the warning makes sense, IMHO: if the return value is not used anywhere, there is no point assigning it to a variable.
Michal Kubecek
| |