summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNeilBrown <neilb@suse.de>2010-07-06 11:57:09 +1000
committerNeilBrown <neilb@suse.de>2010-07-06 11:57:09 +1000
commite5c99c0811199a734ed0fe41784d22230922a49a (patch)
tree38312d403d91cfdc3f1ae20ff26139551a221497
parentb3b4e8a7a229cccca915421329a5319f996b0842 (diff)
downloadmdadm-e5c99c0811199a734ed0fe41784d22230922a49a.tar.gz
mdadm-e5c99c0811199a734ed0fe41784d22230922a49a.tar.xz
mdadm-e5c99c0811199a734ed0fe41784d22230922a49a.zip
Assemble: Fix honouring of 'auto' config line
commit 1ff98339283645a20c980d540f6c4d82693e7daf broke the checking of metadata types via the 'auto' line. Be moving 'load_super" before "conf_test_metadata" we left tst->sb set even if conf_test_metadata fails, so the device will actually be accepted and used. So if we decide to reject the device, free the superblock so it is clear that it is rejected. Signed-off-by: NeilBrown <neilb@suse.de>
-rw-r--r--Assemble.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/Assemble.c b/Assemble.c
index 1504f1f..c5d28ed 100644
--- a/Assemble.c
+++ b/Assemble.c
@@ -271,6 +271,7 @@ int Assemble(struct supertype *st, char *mddev,
fprintf(stderr, Name ": %s has metadata type %s for which "
"auto-assembly is disabled\n",
devname, tst->ss->name);
+ tst->ss->free_super(tst);
tmpdev->used = 2;
} else {
content = &info;