From 3a639d81445a00974c5ccfd877a197adf5607b22 Mon Sep 17 00:00:00 2001 From: Heinz Mauelshagen Date: Mon, 9 Oct 2017 16:13:45 +0200 Subject: [PATCH] raid: cleanup raid4/5/6/10 validation check --- lib/metadata/merge.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/lib/metadata/merge.c b/lib/metadata/merge.c index 711e7e788..9462a36e0 100644 --- a/lib/metadata/merge.c +++ b/lib/metadata/merge.c @@ -169,11 +169,13 @@ static void _check_raid45610_seg(struct lv_segment *seg, int *error_count) _check_raid_region_recovery(seg, error_count); /* END: checks applying to any raid4/5/6/10 */ - if (seg->lv->status & LV_RESHAPE_DATA_OFFSET) { - if (seg->data_offset > 1 && (seg->data_offset & (seg->lv->vg->extent_size - 1))) + if (seg->data_offset > 1) { + if (seg->lv->status & LV_RESHAPE_DATA_OFFSET) { + if (seg->data_offset & (seg->lv->vg->extent_size - 1)) + raid_seg_error_val("data_offset", seg->data_offset); + } else raid_seg_error_val("data_offset", seg->data_offset); - } else if (seg->data_offset) - raid_seg_error_val("data_offset", seg->data_offset); + } /* Specific checks per raid level */ if (seg_is_raid4(seg) || -- 2.43.5