diff options
author | Adam Kwolek <adam.kwolek@intel.com> | 2012-04-13 16:51:55 +0200 |
---|---|---|
committer | NeilBrown <neilb@suse.de> | 2012-04-17 12:33:37 +1000 |
commit | 36fd8ccc0e755042e3983a2bd02523461b5f8307 (patch) | |
tree | 0aecd02933d48e182ba7df523aebe9ce8f4191f0 | |
parent | 0e7f69a873ac7dc24f696d15b2f01d474df26395 (diff) | |
download | mdadm-36fd8ccc0e755042e3983a2bd02523461b5f8307.tar.gz |
imsm: FIX: Update function imsm_num_data_members() for Raid1/10
Function imsm_num_data_members() returns wrong value for raid 1 and 10.
It returns all data member but it should return number of unique data
members (excluding mirror devices)
Signed-off-by: Adam Kwolek <adam.kwolek@intel.com>
Signed-off-by: NeilBrown <neilb@suse.de>
-rw-r--r-- | super-intel.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/super-intel.c b/super-intel.c index 088e6bc..5f86539 100644 --- a/super-intel.c +++ b/super-intel.c @@ -2032,9 +2032,11 @@ static __u8 imsm_num_data_members(struct imsm_dev *dev, int second_map) switch (get_imsm_raid_level(map)) { case 0: + return map->num_members; + break; case 1: case 10: - return map->num_members; + return map->num_members/2; case 5: return map->num_members - 1; default: |