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@xxxxxxxxx> --- super-intel.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) diff --git a/super-intel.c b/super-intel.c index b087b32..3aabcc0 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: -- 1.6.4.2 -- To unsubscribe from this list: send the line "unsubscribe linux-raid" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html