mirror of
git://sourceware.org/git/lvm2.git
synced 2024-12-21 13:34:40 +03:00
Fail allocation if number of extents not divisible by area count
Allocation should fail early if this condition is not met. Quick fix for https://bugzilla.redhat.com/show_bug.cgi?id=707779
This commit is contained in:
parent
9e277b9e2c
commit
6adbb95b82
@ -1,5 +1,6 @@
|
|||||||
Version 2.02.86 -
|
Version 2.02.86 -
|
||||||
=================================
|
=================================
|
||||||
|
Reject allocation if number of extents is not divisible by area count.
|
||||||
Fix issue preventing cluster mirror creation.
|
Fix issue preventing cluster mirror creation.
|
||||||
Disable udev fallback by default and add activation/udev_fallback to lvm.conf.
|
Disable udev fallback by default and add activation/udev_fallback to lvm.conf.
|
||||||
Call vg_mark_partial_lvs() before VG structure is returned from the cache.
|
Call vg_mark_partial_lvs() before VG structure is returned from the cache.
|
||||||
|
@ -1716,6 +1716,13 @@ static int _allocate(struct alloc_handle *ah,
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (ah->area_multiple > 1 &&
|
||||||
|
(ah->new_extents - alloc_state.allocated) % ah->area_count) {
|
||||||
|
log_error("Number of extents requested (%d) needs to be divisible by %d.",
|
||||||
|
ah->new_extents - alloc_state.allocated, ah->area_count);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
alloc_state.log_area_count_still_needed = ah->log_area_count;
|
alloc_state.log_area_count_still_needed = ah->log_area_count;
|
||||||
|
|
||||||
if (ah->alloc == ALLOC_CONTIGUOUS)
|
if (ah->alloc == ALLOC_CONTIGUOUS)
|
||||||
|
@ -248,3 +248,8 @@ lvconvert -m1 -i1 $vg/$lv1
|
|||||||
lvreduce -f -l1 $vg/$lv1
|
lvreduce -f -l1 $vg/$lv1
|
||||||
lvextend -f -l10 $vg/$lv1
|
lvextend -f -l10 $vg/$lv1
|
||||||
lvremove -ff $vg/$lv1
|
lvremove -ff $vg/$lv1
|
||||||
|
|
||||||
|
# extents must be divisible
|
||||||
|
lvcreate -l15 -n $lv1 $vg
|
||||||
|
not lvconvert -m1 --corelog --stripes 2 $vg/$lv1
|
||||||
|
lvremove -ff $vg/$lv1
|
||||||
|
Loading…
Reference in New Issue
Block a user