From: NeilBrown Date: Thu, 27 Nov 2008 04:39:59 +0000 (+1100) Subject: Tidy error messages for add_to_super failure. X-Git-Tag: mdadm-3.0-devel3~65 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=208933a7a839d60e48efc90450c6ed3c0f6873e2;p=thirdparty%2Fmdadm.git Tidy error messages for add_to_super failure. Make sure every failure from add_to_super prints a suitable error message, and then don't print any error in the caller. Signed-off-by: NeilBrown --- diff --git a/Create.c b/Create.c index 424be12c..09df0b88 100644 --- a/Create.c +++ b/Create.c @@ -706,11 +706,8 @@ int Create(struct supertype *st, char *mddev, remove_partitions(fd); if (st->ss->add_to_super(st, &inf->disk, - fd, dv->devname)) { - fprintf(stderr, Name ": failed to add %s\n", - dv->devname); + fd, dv->devname)) goto abort; - } st->ss->getinfo_super(st, inf); safe_mode_delay = inf->safe_mode_delay; diff --git a/Manage.c b/Manage.c index 4998c947..f2b32662 100644 --- a/Manage.c +++ b/Manage.c @@ -626,8 +626,6 @@ int Manage_subdevs(char *devname, int fd, dfd = open(dv->devname, O_RDWR | O_EXCL|O_DIRECT); if (tst->ss->add_to_super(tst, &disc, dfd, dv->devname)) { - fprintf(stderr, Name ": failed to add %s\n", - dv->devname); close(dfd); return 1; } diff --git a/super-intel.c b/super-intel.c index d39b88ca..5d8944ce 100644 --- a/super-intel.c +++ b/super-intel.c @@ -1923,13 +1923,21 @@ static int add_to_super_imsm_volume(struct supertype *st, mdu_disk_info_t *dk, dev = get_imsm_dev(super, super->current_vol); map = get_imsm_map(dev, 0); + if (! (dk->state & (1<disks; dl ; dl = dl->next) if (dl->major == dk->major && dl->minor == dk->minor) break; - if (!dl || ! (dk->state & (1<index < 0) {