lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Fri, 27 Apr 2007 16:11:52 -0500 From: Andy Fleming <afleming@...escale.com> To: Greg Kroah-Hartman <gregkh@...e.de> Cc: linux-kernel@...r.kernel.org, netdev <netdev@...r.kernel.org> Subject: Re: [PATCH 28/46] PHY: remove rwsem use from phy core On Apr 27, 2007, at 13:53, Greg Kroah-Hartman wrote: > The subsystem rwsem is not used by the driver core at all, so the > use of > it in the phy code doesn't make any sense. They might possibly > want to use a local lock, but I am unsure about that. > > Cc: netdev <netdev@...r.kernel.org> > Signed-off-by: Greg Kroah-Hartman <gregkh@...e.de> Acked-by: Andy Fleming <afleming@...escale.com> > --- I think I copied that code from elsewhere without truly understanding it. *bows head in shame* As such, I have no objection to this patch unless someone says it breaks their board. :) > drivers/net/phy/fixed.c | 6 ------ > drivers/net/phy/phy_device.c | 9 +-------- > 2 files changed, 1 insertions(+), 14 deletions(-) > > diff --git a/drivers/net/phy/fixed.c b/drivers/net/phy/fixed.c > index 66da91b..68c99b4 100644 > --- a/drivers/net/phy/fixed.c > +++ b/drivers/net/phy/fixed.c > @@ -276,21 +276,15 @@ static int fixed_mdio_register_device(int > number, int speed, int duplex) > artificially, we are binding the driver here by hand; > it will be the same for all the fixed phys anyway. > */ > - down_write(&phydev->dev.bus->subsys.rwsem); > - > phydev->dev.driver = &fixed_mdio_driver.driver; > > err = phydev->dev.driver->probe(&phydev->dev); > if(err < 0) { > printk(KERN_ERR "Phy %s: problems with fixed driver\n",phydev- > >dev.bus_id); > - up_write(&phydev->dev.bus->subsys.rwsem); > goto probe_fail; > } > > err = device_bind_driver(&phydev->dev); > - > - up_write(&phydev->dev.bus->subsys.rwsem); > - > if (err) > goto probe_fail; > > diff --git a/drivers/net/phy/phy_device.c b/drivers/net/phy/ > phy_device.c > index 7d5b6d1..8f01952 100644 > --- a/drivers/net/phy/phy_device.c > +++ b/drivers/net/phy/phy_device.c > @@ -208,16 +208,12 @@ struct phy_device *phy_attach(struct > net_device *dev, > * exist, and we should use the genphy driver. */ > if (NULL == d->driver) { > int err; > - down_write(&d->bus->subsys.rwsem); > d->driver = &genphy_driver.driver; > > err = d->driver->probe(d); > - > if (err >= 0) > err = device_bind_driver(d); > > - up_write(&d->bus->subsys.rwsem); > - > if (err) > return ERR_PTR(err); > } > @@ -258,11 +254,8 @@ void phy_detach(struct phy_device *phydev) > * was using the generic driver), we unbind the device > * from the generic driver so that there's a chance a > * real driver could be loaded */ > - if (phydev->dev.driver == &genphy_driver.driver) { > - down_write(&phydev->dev.bus->subsys.rwsem); > + if (phydev->dev.driver == &genphy_driver.driver) > device_release_driver(&phydev->dev); > - up_write(&phydev->dev.bus->subsys.rwsem); > - } > } > EXPORT_SYMBOL(phy_detach); > > -- > 1.5.1.2 > > - > To unsubscribe from this list: send the line "unsubscribe netdev" in > the body of a message to majordomo@...r.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists