mirror of
git://sourceware.org/git/lvm2.git
synced 2024-12-21 13:34:40 +03:00
Fix for bz608048 from Taka...
The same region size is used for both mirror volume and mirrored log volume, but when the physical extent size is bigger than region size, the size of mirror leg for mirrored log is smaller than the region size and lvcreate command fails. This patch adjusts a region size of mirrored log to a smaller value of region size or physical extent size. [This patch ensures that the region_size of the mirrored log does not exceed the size of the mirrored log itself, which would violate the kernel constraint: (region_size <= ti->len).] Signed-off-by: Takahiro Yasui <takahiro.yasui@hds.com> Signed-off-by: Jonathan Brassow <jbrassow@redhat.com>
This commit is contained in:
parent
e6f716f551
commit
68c31a2a36
@ -1,5 +1,6 @@
|
||||
Version 2.02.69 -
|
||||
================================
|
||||
Ensure region_size of mirrored log does not exceed its full size.
|
||||
Generate liblvm2app and libdevmapper exported symbols from header file.
|
||||
Preload libc locale messages to prevent reading it in memory locked state.
|
||||
Fix handling of simultaneous mirror image and mirrored log image failure.
|
||||
|
@ -1816,7 +1816,9 @@ int add_mirror_images(struct cmd_context *cmd, struct logical_volume *lv,
|
||||
* create and initialize mirror log
|
||||
*/
|
||||
if (log_count &&
|
||||
!(log_lv = _set_up_mirror_log(cmd, ah, lv, log_count, region_size,
|
||||
!(log_lv = _set_up_mirror_log(cmd, ah, lv, log_count,
|
||||
(region_size > lv->vg->extent_size) ?
|
||||
lv->vg->extent_size : region_size,
|
||||
alloc, mirror_in_sync()))) {
|
||||
stack;
|
||||
goto out_remove_images;
|
||||
|
Loading…
Reference in New Issue
Block a user