2006-11-27 09:34:53

by Cornelia Huck

[permalink] [raw]
Subject: [Patch 5/7] driver core: Change function call order in device_bind_driver().

From: Cornelia Huck <[email protected]>

Change function call order in device_bind_driver().

If we create symlinks (which might fail) before adding the device to the list
we don't have to clean up afterwards (which we didn't).

Signed-off-by: Cornelia Huck <[email protected]>

---
drivers/base/dd.c | 8 ++++++--
1 files changed, 6 insertions(+), 2 deletions(-)

--- linux-2.6-CH.orig/drivers/base/dd.c
+++ linux-2.6-CH/drivers/base/dd.c
@@ -86,8 +86,12 @@ static void driver_sysfs_remove(struct d
*/
int device_bind_driver(struct device *dev)
{
- driver_bound(dev);
- return driver_sysfs_add(dev);
+ int ret;
+
+ ret = driver_sysfs_add(dev);
+ if (!ret)
+ driver_bound(dev);
+ return ret;
}

struct stupid_thread_structure {