Kobject: change drivers/acpi/system.c to use kobject_create_and_add
authorGreg Kroah-Hartman <gregkh@suse.de>
Mon, 17 Dec 2007 19:54:39 +0000 (15:54 -0400)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 25 Jan 2008 04:40:28 +0000 (20:40 -0800)
Stop using kobject_register for this static kobject, as it's overkill.
This way is much simpler.

Cc: Len Brown <len.brown@intel.com>
Cc: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/acpi/system.c

index c22b93aab7fe574fb3d772ed3e799545deb8d540..5ffe0ea18967a82cf8a8ecb4fd64dd7362f125b6 100644 (file)
@@ -58,7 +58,7 @@ module_param_call(acpica_version, NULL, param_get_acpica_version, NULL, 0444);
                               FS Interface (/sys)
    -------------------------------------------------------------------------- */
 static LIST_HEAD(acpi_table_attr_list);
-static struct kobject tables_kobj;
+static struct kobject *tables_kobj;
 
 struct acpi_table_attr {
        struct bin_attribute attr;
@@ -135,11 +135,9 @@ static int acpi_system_sysfs_init(void)
        int table_index = 0;
        int result;
 
-       tables_kobj.parent = acpi_kobj;
-       kobject_set_name(&tables_kobj, "tables");
-       result = kobject_register(&tables_kobj);
-       if (result)
-               return result;
+       tables_kobj = kobject_create_and_add("tables", acpi_kobj);
+       if (!tables_kobj)
+               return -ENOMEM;
 
        do {
                result = acpi_get_table_by_index(table_index, &table_header);
@@ -153,7 +151,7 @@ static int acpi_system_sysfs_init(void)
 
                        acpi_table_attr_init(table_attr, table_header);
                        result =
-                           sysfs_create_bin_file(&tables_kobj,
+                           sysfs_create_bin_file(tables_kobj,
                                                  &table_attr->attr);
                        if (result) {
                                kfree(table_attr);
@@ -163,6 +161,7 @@ static int acpi_system_sysfs_init(void)
                                              &acpi_table_attr_list);
                }
        } while (!result);
+       kobject_uevent(tables_kobj, KOBJ_ADD);
 
        return 0;
 }