seg_flag = SEG_RAID6_N_6;
if (segtype_is_linear(*segtype) ||
- (!segtype_is_raid10(*segtype) && !segtype_is_striped(*segtype)))
+ (!segtype_is_raid4(*segtype) && !segtype_is_raid10(*segtype) && !segtype_is_striped(*segtype)))
seg_flag = SEG_RAID5_N;
/* raid1 -> */
lvseg_name(seg_from), display_lvname(seg_from->lv), *new_image_count);
}
- /* raid4 -> !raid4/raid5* */
- } else if (seg_is_raid4(seg_from) &&
- !segtype_is_raid4(*segtype) && !segtype_is_any_raid5(*segtype)) {
- seg_flag = SEG_RAID5_N;
+ /* raid4 -> * */
+ } else if (seg_is_raid4(seg_from) && !segtype_is_raid4(*segtype) && !segtype_is_striped(*segtype)) {
+ seg_flag = segtype_is_any_raid6(*segtype) ? SEG_RAID6_N_6 : SEG_RAID5_N;
/* raid6 -> striped/raid0/raid5/raid10 */
} else if (seg_is_any_raid6(seg_from)) {