]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - fs/partitions/check.c
kobject: get rid of kobject_add_dir
[linux-2.6-omap-h63xx.git] / fs / partitions / check.c
index 9a3a058f355365405911c3f1173209cfac30150d..69685bb51c62836da683eb1be57da565788d834c 100644 (file)
@@ -335,7 +335,7 @@ static inline void partition_sysfs_add_subdir(struct hd_struct *p)
        struct kobject *k;
 
        k = kobject_get(&p->kobj);
-       p->holder_dir = kobject_add_dir(k, "holders");
+       p->holder_dir = kobject_create_and_add("holders", k);
        kobject_put(k);
 }
 
@@ -344,8 +344,8 @@ static inline void disk_sysfs_add_subdirs(struct gendisk *disk)
        struct kobject *k;
 
        k = kobject_get(&disk->kobj);
-       disk->holder_dir = kobject_add_dir(k, "holders");
-       disk->slave_dir = kobject_add_dir(k, "slaves");
+       disk->holder_dir = kobject_create_and_add("holders", k);
+       disk->slave_dir = kobject_create_and_add("slaves", k);
        kobject_put(k);
 }
 
@@ -372,20 +372,21 @@ void add_partition(struct gendisk *disk, int part, sector_t start, sector_t len,
 {
        struct hd_struct *p;
 
-       p = kmalloc(sizeof(*p), GFP_KERNEL);
+       p = kzalloc(sizeof(*p), GFP_KERNEL);
        if (!p)
                return;
        
-       memset(p, 0, sizeof(*p));
        p->start_sect = start;
        p->nr_sects = len;
        p->partno = part;
        p->policy = disk->policy;
 
-       if (isdigit(disk->kobj.name[strlen(disk->kobj.name)-1]))
-               snprintf(p->kobj.name,KOBJ_NAME_LEN,"%sp%d",disk->kobj.name,part);
+       if (isdigit(disk->kobj.k_name[strlen(disk->kobj.k_name)-1]))
+               kobject_set_name(&p->kobj, "%sp%d",
+                                kobject_name(&disk->kobj), part);
        else
-               snprintf(p->kobj.name,KOBJ_NAME_LEN,"%s%d",disk->kobj.name,part);
+               kobject_set_name(&p->kobj, "%s%d",
+                                kobject_name(&disk->kobj),part);
        p->kobj.parent = &disk->kobj;
        p->kobj.ktype = &ktype_part;
        kobject_init(&p->kobj);
@@ -397,7 +398,6 @@ void add_partition(struct gendisk *disk, int part, sector_t start, sector_t len,
                static struct attribute addpartattr = {
                        .name = "whole_disk",
                        .mode = S_IRUSR | S_IRGRP | S_IROTH,
-                       .owner = THIS_MODULE,
                };
 
                sysfs_create_file(&p->kobj, &addpartattr);
@@ -479,9 +479,9 @@ void register_disk(struct gendisk *disk)
        struct hd_struct *p;
        int err;
 
-       strlcpy(disk->kobj.name,disk->disk_name,KOBJ_NAME_LEN);
+       kobject_set_name(&disk->kobj, "%s", disk->disk_name);
        /* ewww... some of these buggers have / in name... */
-       s = strchr(disk->kobj.name, '/');
+       s = strchr(disk->kobj.k_name, '/');
        if (s)
                *s = '!';
        if ((err = kobject_add(&disk->kobj)))