summaryrefslogtreecommitdiffstats
path: root/super-ddf.c
diff options
context:
space:
mode:
authorNeil Brown <neilb@suse.de>2008-06-12 10:13:28 +1000
committerNeil Brown <neilb@suse.de>2008-06-12 10:13:28 +1000
commit57632f4afb3588465454187ca6ab66ffb200b677 (patch)
tree1e16e191a29d82d312937deb7769c0ca853c286f /super-ddf.c
parent80d26cb2fd18f814e1493aae92357868e044ae8b (diff)
downloadmdadm-57632f4afb3588465454187ca6ab66ffb200b677.tar.gz
mdadm-57632f4afb3588465454187ca6ab66ffb200b677.tar.xz
mdadm-57632f4afb3588465454187ca6ab66ffb200b677.zip
Some fixes to make failures in ddf get handled properly.
Diffstat (limited to 'super-ddf.c')
-rw-r--r--super-ddf.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/super-ddf.c b/super-ddf.c
index 9dbadfb..66fdb80 100644
--- a/super-ddf.c
+++ b/super-ddf.c
@@ -2664,8 +2664,8 @@ static void ddf_set_disk(struct active_array *a, int n, int state)
pd = find_phys(ddf, vc->phys_refnum[i]);
if (pd < 0)
continue;
- st = ddf->phys->entries[pd].state;
- if ((state & (DDF_Online|DDF_Failed|DDF_Rebuilding))
+ st = __be16_to_cpu(ddf->phys->entries[pd].state);
+ if ((st & (DDF_Online|DDF_Failed|DDF_Rebuilding))
== DDF_Online)
working++;
}