]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - lib/kobject.c
[S390] Initialize interval value to 0.
[linux-2.6-omap-h63xx.git] / lib / kobject.c
index 687ab418d292b15084d8a97be48f6003b0d0e315..7dd5c0e9d996adb07681e02037e746b68a2a2f50 100644 (file)
@@ -119,6 +119,7 @@ char *kobject_get_path(struct kobject *kobj, gfp_t gfp_mask)
 
        return path;
 }
+EXPORT_SYMBOL_GPL(kobject_get_path);
 
 /**
  *     kobject_init - initialize object.
@@ -198,14 +199,14 @@ int kobject_add(struct kobject * kobj)
 
                /* be noisy on error issues */
                if (error == -EEXIST)
-                       pr_debug("kobject_add failed for %s with -EEXIST, "
+                       printk("kobject_add failed for %s with -EEXIST, "
                               "don't try to register things with the "
                               "same name in the same directory.\n",
                               kobject_name(kobj));
                else
-                       pr_debug("kobject_add failed for %s (%d)\n",
+                       printk("kobject_add failed for %s (%d)\n",
                               kobject_name(kobj), error);
-               /* dump_stack(); */
+                dump_stack();
        }
 
        return error;
@@ -407,6 +408,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 +420,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;
 }