浏览代码

[PATCH] kobject/hotplug split - class core

kobject_add() and kobject_del() don't emit hotplug events anymore. Do it
ourselves if we are finished populating the device directory.

Signed-off-by: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
kay.sievers@vrfy.org 20 年之前
父节点
当前提交
0700f56bbc
共有 1 个文件被更改,包括 2 次插入0 次删除
  1. 2 0
      drivers/base/class.c

+ 2 - 0
drivers/base/class.c

@@ -430,6 +430,7 @@ int class_device_add(struct class_device *class_dev)
 		sysfs_create_link(&class_dev->kobj,
 		sysfs_create_link(&class_dev->kobj,
 				  &class_dev->dev->kobj, "device");
 				  &class_dev->dev->kobj, "device");
 
 
+	kobject_hotplug(&class_dev->kobj, KOBJ_ADD);
  register_done:
  register_done:
 	if (error && parent)
 	if (error && parent)
 		class_put(parent);
 		class_put(parent);
@@ -461,6 +462,7 @@ void class_device_del(struct class_device *class_dev)
 		sysfs_remove_link(&class_dev->kobj, "device");
 		sysfs_remove_link(&class_dev->kobj, "device");
 	class_device_remove_attrs(class_dev);
 	class_device_remove_attrs(class_dev);
 
 
+	kobject_hotplug(&class_dev->kobj, KOBJ_REMOVE);
 	kobject_del(&class_dev->kobj);
 	kobject_del(&class_dev->kobj);
 
 
 	if (parent)
 	if (parent)