From: Greg Kroah-Hartman Date: Wed, 22 Jun 2005 23:09:05 +0000 (-0700) Subject: [PATCH] driver core: Fix up the device_attach() error handling in bus_add_device() X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=d377e85b537a5e166272f937da6ba84350676b6e;p=openwrt%2Fstaging%2Fblogic.git [PATCH] driver core: Fix up the device_attach() error handling in bus_add_device() Don't error out if something "bad" happens when trying to bind a driver to a device. We want the sysfs attributes to be present for later when we try to tear down the device. Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/base/bus.c b/drivers/base/bus.c index 43722af90bdd..c3fac7fd555e 100644 --- a/drivers/base/bus.c +++ b/drivers/base/bus.c @@ -270,10 +270,9 @@ int bus_add_device(struct device * dev) if (bus) { pr_debug("bus %s: add device %s\n", bus->name, dev->bus_id); - error = device_attach(dev); + device_attach(dev); klist_add_tail(&bus->klist_devices, &dev->knode_bus); - if (error >= 0) - error = device_add_attrs(bus, dev); + error = device_add_attrs(bus, dev); if (!error) { sysfs_create_link(&bus->devices.kobj, &dev->kobj, dev->bus_id); sysfs_create_link(&dev->kobj, &dev->bus->subsys.kset.kobj, "bus");