}
err = __kmem_cache_create(s, flags);
- if (!err)
+ if (!err) {
+ s->refcount = 1;
list_add(&s->list, &slab_caches);
- else {
+ } else {
kfree(s->name);
kmem_cache_free(kmem_cache, s);
}
return NULL;
}
- if (s->refcount == 1) {
- err = sysfs_slab_add(s);
- if (err)
- printk(KERN_WARNING "kmem_cache_create(%s) failed to"
- " create sysfs entry. Error %d\n",
- name, err);
- }
-
return s;
}
EXPORT_SYMBOL(kmem_cache_create);