From 56bbc588f7f0f3bdd3ec23f02109b427c1d3b8f1 Mon Sep 17 00:00:00 2001 From: NeilBrown Date: Tue, 25 Feb 2014 15:04:16 +1100 Subject: [PATCH 3/3] Assemble: change load_devices to return most_recent 'st' value. This means that st->ss->getinfo_super(st, content, NULL); clean = content->array.state & 1; will get an up-to-date value for 'clean'. This fix allows tests/03r5assem-failed to work. Signed-off-by: NeilBrown --- Assemble.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) --- mdadm-3.3.orig/Assemble.c +++ mdadm-3.3/Assemble.c @@ -703,8 +703,12 @@ static int load_devices(struct devs *dev if (devices[devcnt].i.disk.state == 6) { if (most_recent < 0 || devices[devcnt].i.events - > devices[most_recent].i.events) + > devices[most_recent].i.events) { + struct supertype *tmp = tst; + tst = st; + st = tmp; most_recent = devcnt; + } } tst->ss->free_super(tst); free(tst);