diff options
-rw-r--r-- | drivers/base/bus.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/base/bus.c b/drivers/base/bus.c index be1cc5143354..ef522ae55480 100644 --- a/drivers/base/bus.c +++ b/drivers/base/bus.c @@ -530,7 +530,8 @@ void bus_remove_device(struct device *dev) sysfs_remove_link(&dev->bus->p->devices_kset->kobj, dev->bus_id); device_remove_attrs(dev->bus, dev); - klist_del(&dev->knode_bus); + if (klist_node_attached(&dev->knode_bus)) + klist_del(&dev->knode_bus); pr_debug("bus: '%s': remove device %s\n", dev->bus->name, dev->bus_id); |