[netdrvr] phy: Fix bugs in error handling
The recent __must_check stuff flagged some error handling bugs.
phy/fixed.c:
* handle device_bind_driver() failure
phy/phy_device.c:
* handle device_bind_driver() failure
* release rwsem upon failure
Signed-off-by: Jeff Garzik <jeff@garzik.org>
diff --git a/drivers/net/phy/fixed.c b/drivers/net/phy/fixed.c
index 19f7ee6..94b47c8d0 100644
--- a/drivers/net/phy/fixed.c
+++ b/drivers/net/phy/fixed.c
@@ -289,9 +289,13 @@
goto probe_fail;
}
- device_bind_driver(&phydev->dev);
+ err = device_bind_driver(&phydev->dev);
+
up_write(&phydev->dev.bus->subsys.rwsem);
+ if (err)
+ goto probe_fail;
+
return 0;
probe_fail: