kobject: must_check fixes
[linux-2.6.git] / lib / kobject.c
index 8e7c719..1699eb9 100644 (file)
@@ -407,6 +407,7 @@ static struct kobj_type dir_ktype = {
 struct kobject *kobject_add_dir(struct kobject *parent, const char *name)
 {
        struct kobject *k;
+       int ret;
 
        if (!parent)
                return NULL;
@@ -418,7 +419,13 @@ struct kobject *kobject_add_dir(struct kobject *parent, const char *name)
        k->parent = parent;
        k->ktype = &dir_ktype;
        kobject_set_name(k, name);
-       kobject_register(k);
+       ret = kobject_register(k);
+       if (ret < 0) {
+               printk(KERN_WARNING "kobject_add_dir: "
+                       "kobject_register error: %d\n", ret);
+               kobject_del(k);
+               return NULL;
+       }
 
        return k;
 }