[PATCH] md: convert compile time warnings into runtime warnings
... still not sure why we need this .... Signed-off-by: Neil Brown <neilb@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
041ae52e26
commit
5e55e2f5fc
2 changed files with 41 additions and 12 deletions
|
@ -1318,6 +1318,7 @@ static int bind_rdev_to_array(mdk_rdev_t * rdev, mddev_t * mddev)
|
||||||
char b[BDEVNAME_SIZE];
|
char b[BDEVNAME_SIZE];
|
||||||
struct kobject *ko;
|
struct kobject *ko;
|
||||||
char *s;
|
char *s;
|
||||||
|
int err;
|
||||||
|
|
||||||
if (rdev->mddev) {
|
if (rdev->mddev) {
|
||||||
MD_BUG();
|
MD_BUG();
|
||||||
|
@ -1352,20 +1353,29 @@ static int bind_rdev_to_array(mdk_rdev_t * rdev, mddev_t * mddev)
|
||||||
while ( (s=strchr(rdev->kobj.k_name, '/')) != NULL)
|
while ( (s=strchr(rdev->kobj.k_name, '/')) != NULL)
|
||||||
*s = '!';
|
*s = '!';
|
||||||
|
|
||||||
list_add(&rdev->same_set, &mddev->disks);
|
|
||||||
rdev->mddev = mddev;
|
rdev->mddev = mddev;
|
||||||
printk(KERN_INFO "md: bind<%s>\n", b);
|
printk(KERN_INFO "md: bind<%s>\n", b);
|
||||||
|
|
||||||
rdev->kobj.parent = &mddev->kobj;
|
rdev->kobj.parent = &mddev->kobj;
|
||||||
kobject_add(&rdev->kobj);
|
if ((err = kobject_add(&rdev->kobj)))
|
||||||
|
goto fail;
|
||||||
|
|
||||||
if (rdev->bdev->bd_part)
|
if (rdev->bdev->bd_part)
|
||||||
ko = &rdev->bdev->bd_part->kobj;
|
ko = &rdev->bdev->bd_part->kobj;
|
||||||
else
|
else
|
||||||
ko = &rdev->bdev->bd_disk->kobj;
|
ko = &rdev->bdev->bd_disk->kobj;
|
||||||
sysfs_create_link(&rdev->kobj, ko, "block");
|
if ((err = sysfs_create_link(&rdev->kobj, ko, "block"))) {
|
||||||
|
kobject_del(&rdev->kobj);
|
||||||
|
goto fail;
|
||||||
|
}
|
||||||
|
list_add(&rdev->same_set, &mddev->disks);
|
||||||
bd_claim_by_disk(rdev->bdev, rdev, mddev->gendisk);
|
bd_claim_by_disk(rdev->bdev, rdev, mddev->gendisk);
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
|
fail:
|
||||||
|
printk(KERN_WARNING "md: failed to register dev-%s for %s\n",
|
||||||
|
b, mdname(mddev));
|
||||||
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void unbind_rdev_from_array(mdk_rdev_t * rdev)
|
static void unbind_rdev_from_array(mdk_rdev_t * rdev)
|
||||||
|
@ -2966,7 +2976,9 @@ static struct kobject *md_probe(dev_t dev, int *part, void *data)
|
||||||
mddev->kobj.k_name = NULL;
|
mddev->kobj.k_name = NULL;
|
||||||
snprintf(mddev->kobj.name, KOBJ_NAME_LEN, "%s", "md");
|
snprintf(mddev->kobj.name, KOBJ_NAME_LEN, "%s", "md");
|
||||||
mddev->kobj.ktype = &md_ktype;
|
mddev->kobj.ktype = &md_ktype;
|
||||||
kobject_register(&mddev->kobj);
|
if (kobject_register(&mddev->kobj))
|
||||||
|
printk(KERN_WARNING "md: cannot register %s/md - name in use\n",
|
||||||
|
disk->disk_name);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3144,9 +3156,12 @@ static int do_md_run(mddev_t * mddev)
|
||||||
bitmap_destroy(mddev);
|
bitmap_destroy(mddev);
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
if (mddev->pers->sync_request)
|
if (mddev->pers->sync_request) {
|
||||||
sysfs_create_group(&mddev->kobj, &md_redundancy_group);
|
if (sysfs_create_group(&mddev->kobj, &md_redundancy_group))
|
||||||
else if (mddev->ro == 2) /* auto-readonly not meaningful */
|
printk(KERN_WARNING
|
||||||
|
"md: cannot register extra attributes for %s\n",
|
||||||
|
mdname(mddev));
|
||||||
|
} else if (mddev->ro == 2) /* auto-readonly not meaningful */
|
||||||
mddev->ro = 0;
|
mddev->ro = 0;
|
||||||
|
|
||||||
atomic_set(&mddev->writes_pending,0);
|
atomic_set(&mddev->writes_pending,0);
|
||||||
|
@ -3160,7 +3175,9 @@ static int do_md_run(mddev_t * mddev)
|
||||||
if (rdev->raid_disk >= 0) {
|
if (rdev->raid_disk >= 0) {
|
||||||
char nm[20];
|
char nm[20];
|
||||||
sprintf(nm, "rd%d", rdev->raid_disk);
|
sprintf(nm, "rd%d", rdev->raid_disk);
|
||||||
sysfs_create_link(&mddev->kobj, &rdev->kobj, nm);
|
if (sysfs_create_link(&mddev->kobj, &rdev->kobj, nm))
|
||||||
|
printk("md: cannot register %s for %s\n",
|
||||||
|
nm, mdname(mddev));
|
||||||
}
|
}
|
||||||
|
|
||||||
set_bit(MD_RECOVERY_NEEDED, &mddev->recovery);
|
set_bit(MD_RECOVERY_NEEDED, &mddev->recovery);
|
||||||
|
@ -5386,8 +5403,12 @@ static int remove_and_add_spares(mddev_t *mddev)
|
||||||
if (mddev->pers->hot_add_disk(mddev,rdev)) {
|
if (mddev->pers->hot_add_disk(mddev,rdev)) {
|
||||||
char nm[20];
|
char nm[20];
|
||||||
sprintf(nm, "rd%d", rdev->raid_disk);
|
sprintf(nm, "rd%d", rdev->raid_disk);
|
||||||
sysfs_create_link(&mddev->kobj,
|
if (sysfs_create_link(&mddev->kobj,
|
||||||
&rdev->kobj, nm);
|
&rdev->kobj, nm))
|
||||||
|
printk(KERN_WARNING
|
||||||
|
"md: cannot register "
|
||||||
|
"%s for %s\n",
|
||||||
|
nm, mdname(mddev));
|
||||||
spares++;
|
spares++;
|
||||||
md_new_event(mddev);
|
md_new_event(mddev);
|
||||||
} else
|
} else
|
||||||
|
|
|
@ -3642,7 +3642,10 @@ static int run(mddev_t *mddev)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Ok, everything is just fine now */
|
/* Ok, everything is just fine now */
|
||||||
sysfs_create_group(&mddev->kobj, &raid5_attrs_group);
|
if (sysfs_create_group(&mddev->kobj, &raid5_attrs_group))
|
||||||
|
printk(KERN_WARNING
|
||||||
|
"raid5: failed to create sysfs attributes for %s\n",
|
||||||
|
mdname(mddev));
|
||||||
|
|
||||||
mddev->queue->unplug_fn = raid5_unplug_device;
|
mddev->queue->unplug_fn = raid5_unplug_device;
|
||||||
mddev->queue->issue_flush_fn = raid5_issue_flush;
|
mddev->queue->issue_flush_fn = raid5_issue_flush;
|
||||||
|
@ -3951,7 +3954,12 @@ static int raid5_start_reshape(mddev_t *mddev)
|
||||||
added_devices++;
|
added_devices++;
|
||||||
rdev->recovery_offset = 0;
|
rdev->recovery_offset = 0;
|
||||||
sprintf(nm, "rd%d", rdev->raid_disk);
|
sprintf(nm, "rd%d", rdev->raid_disk);
|
||||||
sysfs_create_link(&mddev->kobj, &rdev->kobj, nm);
|
if (sysfs_create_link(&mddev->kobj,
|
||||||
|
&rdev->kobj, nm))
|
||||||
|
printk(KERN_WARNING
|
||||||
|
"raid5: failed to create "
|
||||||
|
" link %s for %s\n",
|
||||||
|
nm, mdname(mddev));
|
||||||
} else
|
} else
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue