summaryrefslogtreecommitdiff
path: root/Incremental.c
diff options
context:
space:
mode:
authorNeilBrown <neilb@suse.de>2014-11-05 16:21:42 +1100
committerNeilBrown <neilb@suse.de>2014-11-05 16:21:42 +1100
commit6c90491f44024af25c9a9a322b6a4fb21e695540 (patch)
treec58905442aef7d0ea9fd4546e4d84eea6d08a52b /Incremental.c
parent8057db46a15daba1c954352fe19cfa7c9c6a6805 (diff)
downloadmdadm-6c90491f44024af25c9a9a322b6a4fb21e695540.tar.gz
Incremental: don't be distracted by partition table when calling try_spare.
Currently a partition table on a device makes "mdadm -I" think the array has a particular metadata type and so will only add it to an array of that (partition table) type .. which doesn't make any sense. So tell guess_super to only look for 'array' metadata. Reported-by: Caspar Smit <c.smit@truebit.nl> Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'Incremental.c')
-rw-r--r--Incremental.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/Incremental.c b/Incremental.c
index c937258..13b68bc 100644
--- a/Incremental.c
+++ b/Incremental.c
@@ -196,13 +196,13 @@ int Incremental(struct mddev_dev *devlist, struct context *c,
policy = disk_policy(&dinfo);
have_target = policy_check_path(&dinfo, &target_array);
- if (st == NULL && (st = guess_super(dfd)) == NULL) {
+ if (st == NULL && (st = guess_super_type(dfd, guess_array)) == NULL) {
if (c->verbose >= 0)
pr_err("no recognisable superblock on %s.\n",
devname);
rv = try_spare(devname, &dfd, policy,
have_target ? &target_array : NULL,
- st, c->verbose);
+ NULL, c->verbose);
goto out;
}
st->ignore_hw_compat = 1;