return 0;
fail:
- printk(NO_SB,partition_name(rdev->dev));
+ printk(NO_SB,bdev_partition_name(rdev->bdev));
return -EINVAL;
}
}
if (sb->md_magic != MD_SB_MAGIC) {
- printk(BAD_MAGIC, partition_name(rdev->dev));
+ printk(BAD_MAGIC, bdev_partition_name(rdev->bdev));
goto abort;
}
if (sb->md_minor >= MAX_MD_DEVS) {
- printk(BAD_MINOR, partition_name(rdev->dev), sb->md_minor);
+ printk(BAD_MINOR, bdev_partition_name(rdev->bdev), sb->md_minor);
goto abort;
}
if (calc_sb_csum(sb) != sb->sb_csum) {
- printk(BAD_CSUM, partition_name(rdev->dev));
+ printk(BAD_CSUM, bdev_partition_name(rdev->bdev));
goto abort;
}
ret = 0;
printk( KERN_WARNING
"md%d: WARNING: %s appears to be on the same physical disk as %s. True\n"
" protection against single-disk failure might be compromised.\n",
- mdidx(mddev), partition_name(rdev->dev),
- partition_name(same_pdev->dev));
+ mdidx(mddev), bdev_partition_name(rdev->bdev),
+ bdev_partition_name(same_pdev->bdev));
list_add(&rdev->same_set, &mddev->disks);
rdev->mddev = mddev;
- printk(KERN_INFO "md: bind<%s>\n", partition_name(rdev->dev));
+ printk(KERN_INFO "md: bind<%s>\n", bdev_partition_name(rdev->bdev));
}
static void unbind_rdev_from_array(mdk_rdev_t * rdev)
return;
}
list_del_init(&rdev->same_set);
- printk(KERN_INFO "md: unbind<%s>\n", partition_name(rdev->dev));
+ printk(KERN_INFO "md: unbind<%s>\n", bdev_partition_name(rdev->bdev));
rdev->mddev = NULL;
}
static void export_rdev(mdk_rdev_t * rdev)
{
- printk(KERN_INFO "md: export_rdev(%s)\n",partition_name(rdev->dev));
+ printk(KERN_INFO "md: export_rdev(%s)\n",bdev_partition_name(rdev->bdev));
if (rdev->mddev)
MD_BUG();
free_disk_sb(rdev);
static void print_rdev(mdk_rdev_t *rdev)
{
printk(KERN_INFO "md: rdev %s, SZ:%08ld F:%d DN:%d ",
- partition_name(rdev->dev),
+ bdev_partition_name(rdev->bdev),
rdev->size, rdev->faulty, rdev->desc_nr);
if (rdev->sb) {
printk(KERN_INFO "md: rdev superblock:\n");
printk("md%d: ", mdidx(mddev));
ITERATE_RDEV(mddev,rdev,tmp2)
- printk("<%s>", partition_name(rdev->dev));
+ printk("<%s>", bdev_partition_name(rdev->bdev));
ITERATE_RDEV(mddev,rdev,tmp2)
print_rdev(rdev);
static int write_disk_sb(mdk_rdev_t * rdev)
{
- kdev_t dev = rdev->dev;
unsigned long sb_offset, size;
if (!rdev->sb) {
sb_offset = calc_dev_sboffset(rdev->bdev);
if (rdev->sb_offset != sb_offset) {
printk(KERN_INFO "%s's sb offset has changed from %ld to %ld, skipping\n",
- partition_name(dev), rdev->sb_offset, sb_offset);
+ bdev_partition_name(rdev->bdev), rdev->sb_offset, sb_offset);
goto skip;
}
/*
size = calc_dev_size(rdev->bdev, rdev->mddev);
if (size != rdev->size) {
printk(KERN_INFO "%s's size has changed from %ld to %ld since import, skipping\n",
- partition_name(dev), rdev->size, size);
+ bdev_partition_name(rdev->bdev), rdev->size, size);
goto skip;
}
- printk(KERN_INFO "(write) %s's sb offset: %ld\n", partition_name(dev), sb_offset);
+ printk(KERN_INFO "(write) %s's sb offset: %ld\n", bdev_partition_name(rdev->bdev), sb_offset);
if (!sync_page_io(rdev->bdev, sb_offset<<1, MD_SB_BYTES, rdev->sb_page, WRITE))
goto fail;
skip:
return 0;
fail:
- printk("md: write_disk_sb failed for device %s\n", partition_name(dev));
+ printk("md: write_disk_sb failed for device %s\n", bdev_partition_name(rdev->bdev));
return 1;
}
if (rdev->alias_device)
printk("(skipping alias ");
- printk("%s ", partition_name(rdev->dev));
+ printk("%s ", bdev_partition_name(rdev->bdev));
if (!rdev->faulty && !rdev->alias_device) {
printk("[events: %08lx]",
(unsigned long)rdev->sb->events_lo);
if (!size) {
printk(KERN_WARNING
"md: %s has zero or unknown size, marking faulty!\n",
- partition_name(newdev));
+ bdev_partition_name(rdev->bdev));
err = -EINVAL;
goto abort_free;
}
if (on_disk) {
if ((err = read_disk_sb(rdev))) {
printk(KERN_WARNING "md: could not read %s's sb, not importing!\n",
- partition_name(newdev));
+ bdev_partition_name(rdev->bdev));
goto abort_free;
}
if ((err = check_disk_sb(rdev))) {
printk(KERN_WARNING "md: %s has invalid sb, not importing!\n",
- partition_name(newdev));
+ bdev_partition_name(rdev->bdev));
goto abort_free;
}
}
continue;
}
if (!sb_equal(sb, rdev->sb)) {
- printk(INCONSISTENT, partition_name(rdev->dev));
+ printk(INCONSISTENT, bdev_partition_name(rdev->bdev));
kick_rdev_from_array(rdev);
continue;
}
}
printk(KERN_INFO "md: %s's event counter: %08lx\n",
- partition_name(rdev->dev),
+ bdev_partition_name(rdev->bdev),
(unsigned long)rdev->sb->events_lo);
if (!freshest) {
freshest = rdev;
}
if (out_of_date) {
printk(OUT_OF_DATE);
- printk(KERN_INFO "md: freshest: %s\n", partition_name(freshest->dev));
+ printk(KERN_INFO "md: freshest: %s\n", bdev_partition_name(freshest->bdev));
}
sb = freshest->sb;
++ev1;
if (ev1 < mddev->events) {
printk(KERN_WARNING "md: kicking non-fresh %s from array!\n",
- partition_name(rdev->dev));
+ bdev_partition_name(rdev->bdev));
kick_rdev_from_array(rdev);
continue;
}
if (rdev->size < mddev->chunk_size / 1024) {
printk(KERN_WARNING
"md: Dev %s smaller than chunk_size: %ldk < %dk\n",
- partition_name(rdev->dev),
+ bdev_partition_name(rdev->bdev),
rdev->size, mddev->chunk_size / 1024);
return -EINVAL;
}
printk(KERN_INFO "md: running: ");
ITERATE_RDEV(mddev,rdev,tmp) {
- printk("<%s>", partition_name(rdev->dev));
+ printk("<%s>", bdev_partition_name(rdev->bdev));
}
printk("\n");
rdev0 = list_entry(pending_raid_disks.next,
mdk_rdev_t, same_set);
- printk(KERN_INFO "md: considering %s ...\n", partition_name(rdev0->dev));
+ printk(KERN_INFO "md: considering %s ...\n", bdev_partition_name(rdev0->bdev));
INIT_LIST_HEAD(&candidates);
ITERATE_RDEV_PENDING(rdev,tmp) {
if (uuid_equal(rdev0, rdev)) {
if (!sb_equal(rdev0->sb, rdev->sb)) {
printk(KERN_WARNING
"md: %s has same UUID as %s, but superblocks differ ...\n",
- partition_name(rdev->dev), partition_name(rdev0->dev));
+ bdev_partition_name(rdev->bdev), bdev_partition_name(rdev0->bdev));
continue;
}
- printk(KERN_INFO "md: adding %s ...\n", partition_name(rdev->dev));
+ printk(KERN_INFO "md: adding %s ...\n", bdev_partition_name(rdev->bdev));
list_move(&rdev->same_set, &candidates);
}
}
mdidx(mddev));
else if (mddev->raid_disks || !list_empty(&mddev->disks)) {
printk(KERN_WARNING "md: md%d already running, cannot run %s\n",
- mdidx(mddev), partition_name(rdev0->dev));
+ mdidx(mddev), bdev_partition_name(rdev0->bdev));
mddev_unlock(mddev);
} else {
printk(KERN_INFO "md: created md%d\n", mdidx(mddev));
if (start_rdev->faulty) {
printk(KERN_WARNING "md: can not autostart based on faulty %s!\n",
- partition_name(startdev));
+ bdev_partition_name(start_rdev->bdev));
goto abort;
}
list_add(&start_rdev->same_set, &pending_raid_disks);
mdk_rdev_t, same_set);
if (!uuid_equal(rdev0, rdev)) {
printk(KERN_WARNING "md: %s has different UUID to %s\n",
- partition_name(rdev->dev), partition_name(rdev0->dev));
+ bdev_partition_name(rdev->bdev), bdev_partition_name(rdev0->bdev));
export_rdev(rdev);
return -EINVAL;
}
if (!sb_equal(rdev0->sb, rdev->sb)) {
printk(KERN_WARNING "md: %s has same UUID but different superblock to %s\n",
- partition_name(rdev->dev), partition_name(rdev0->dev));
+ bdev_partition_name(rdev->bdev), bdev_partition_name(rdev0->bdev));
export_rdev(rdev);
return -EINVAL;
}
return 0;
busy:
printk(KERN_WARNING "md: cannot remove active disk %s from md%d ... \n",
- partition_name(dev), mdidx(mddev));
+ bdev_partition_name(rdev->bdev), mdidx(mddev));
return -EBUSY;
}
if (rdev->faulty) {
printk(KERN_WARNING "md: can not hot-add faulty %s disk to md%d!\n",
- partition_name(dev), mdidx(mddev));
+ bdev_partition_name(rdev->bdev), mdidx(mddev));
err = -EINVAL;
goto abort_export;
}
ITERATE_RDEV_PENDING(rdev,tmp) {
i++;
sz += sprintf(page + sz, "%s ",
- partition_name(rdev->dev));
+ bdev_partition_name(rdev->bdev));
}
if (!i)
sz += sprintf(page + sz, "<none>");
size = 0;
ITERATE_RDEV(mddev,rdev,tmp2) {
sz += sprintf(page + sz, " %s[%d]",
- partition_name(rdev->dev), rdev->desc_nr);
+ bdev_partition_name(rdev->bdev), rdev->desc_nr);
if (rdev->faulty) {
sz += sprintf(page + sz, "(F)");
continue;
"-- continuing in degraded mode\n", mdidx(mddev));
else
printk(KERN_INFO "md%d: resyncing spare disk %s to replace failed disk\n",
- mdidx(mddev), partition_name(mddev->spare->dev));
+ mdidx(mddev), bdev_partition_name(mddev->spare->bdev));
}
if (!mddev->spare && mddev->in_sync) {
/* nothing we can do ... */