summaryrefslogtreecommitdiff
path: root/drivers/base
diff options
context:
space:
mode:
authorDmitry Torokhov <dtor_core@ameritech.net>2005-09-15 02:01:37 -0500
committerGreg Kroah-Hartman <gregkh@suse.de>2005-10-28 09:52:50 -0700
commitdbe9035d4f690c44b55d3d0f1bc193e2c3fc57fa (patch)
tree56e46e581e95ae3bc8ca5473b4fd147c8b6d1f03 /drivers/base
parentb94dc6b58667a73eeaf5cfd9c9e90dcd98743c5b (diff)
downloadlinux-3.10-dbe9035d4f690c44b55d3d0f1bc193e2c3fc57fa.tar.gz
linux-3.10-dbe9035d4f690c44b55d3d0f1bc193e2c3fc57fa.tar.bz2
linux-3.10-dbe9035d4f690c44b55d3d0f1bc193e2c3fc57fa.zip
[PATCH] Driver core: send hotplug event before adding class interfaces
Move call to kobject_hotplug() above code that adds interfaces to a class device, otherwise children's hotplug events may reach userspace first. Signed-off-by: Dmitry Torokhov <dtor@mail.ru> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/base')
-rw-r--r--drivers/base/class.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/base/class.c b/drivers/base/class.c
index ce23dc8c18c..8df58c57dd2 100644
--- a/drivers/base/class.c
+++ b/drivers/base/class.c
@@ -524,6 +524,8 @@ int class_device_add(struct class_device *class_dev)
class_name);
}
+ kobject_hotplug(&class_dev->kobj, KOBJ_ADD);
+
/* notify any interfaces this device is now here */
if (parent) {
down(&parent->sem);
@@ -533,7 +535,6 @@ int class_device_add(struct class_device *class_dev)
class_intf->add(class_dev);
up(&parent->sem);
}
- kobject_hotplug(&class_dev->kobj, KOBJ_ADD);
register_done:
if (error && parent)