diff --git a/Assemble.c b/Assemble.c index 06e122d..2925733 100644 --- a/Assemble.c +++ b/Assemble.c @@ -250,7 +250,9 @@ static int select_devices(struct mddev_dev *devlist, pr_err("no recogniseable superblock on %s\n", devname); tmpdev->used = 2; - } else if (tst->ss->load_super(tst,dfd, NULL)) { + } else if ((tst->ignore_hw_compat = 0), + tst->ss->load_super(tst, dfd, + report_mismatch ? devname : NULL)) { if (report_mismatch) pr_err("no RAID superblock on %s\n", devname); diff --git a/Incremental.c b/Incremental.c index 8857619..41876b9 100644 --- a/Incremental.c +++ b/Incremental.c @@ -205,7 +205,7 @@ int Incremental(struct mddev_dev *devlist, struct context *c, st->ignore_hw_compat = 0; if (st->ss->compare_super == NULL || - st->ss->load_super(st, dfd, NULL)) { + st->ss->load_super(st, dfd, c->verbose >= 0 ? devname : NULL)) { if (c->verbose >= 0) pr_err("no RAID superblock on %s.\n", devname);