From 05833051ee595c8d356a2a1ed61f7d9e6f4186ef Mon Sep 17 00:00:00 2001 From: NeilBrown Date: Mon, 11 May 2009 15:19:30 +1000 Subject: [PATCH] Assemble/Incr : minor tidy up of setting 'trustworthy'. Signed-off-by: NeilBrown --- Assemble.c | 14 ++++---------- Incremental.c | 2 ++ 2 files changed, 6 insertions(+), 10 deletions(-) diff --git a/Assemble.c b/Assemble.c index 13953bda..c079f6b3 100644 --- a/Assemble.c +++ b/Assemble.c @@ -480,17 +480,14 @@ int Assemble(struct supertype *st, char *mddev, if (!st || !st->sb || !content) return 2; - /* Now need to open array the device. Use create_mddev */ + /* Now need to open the array device. Use create_mddev */ if (content == &info) st->ss->getinfo_super(st, content); trustworthy = FOREIGN; + name = content->name; switch (st->ss->match_home(st, homehost) ?: st->ss->match_home(st, "any")) { - case 0: - trustworthy = FOREIGN; - name = content->name; - break; case 1: trustworthy = LOCAL; name = strchr(content->name, ':'); @@ -499,18 +496,15 @@ int Assemble(struct supertype *st, char *mddev, else name = content->name; break; - case -1: - trustworthy = FOREIGN; - break; } - if (!auto_assem && trustworthy == FOREIGN) + if (!auto_assem) /* If the array is listed in mdadm.conf or on * command line, then we trust the name * even if the array doesn't look local */ trustworthy = LOCAL; - if (content->name[0] == 0 && + if (name[0] == 0 && content->array.level == LEVEL_CONTAINER) { name = content->text_version; trustworthy = METADATA; diff --git a/Incremental.c b/Incremental.c index 7d6de981..8908eece 100644 --- a/Incremental.c +++ b/Incremental.c @@ -810,6 +810,8 @@ int Incremental_container(struct supertype *st, char *devname, int verbose, match->container, match->member); return 2; } + if (match) + trustworthy = LOCAL; mdfd = create_mddev(match ? match->devname : NULL, ra->name, -- 2.39.2