]> sourceware.org Git - lvm2.git/commit
Fix for bug 734252 - problem up converting striped mirror after image failure
authorJonathan Earl Brassow <jbrassow@redhat.com>
Wed, 14 Sep 2011 02:45:36 +0000 (02:45 +0000)
committerJonathan Earl Brassow <jbrassow@redhat.com>
Wed, 14 Sep 2011 02:45:36 +0000 (02:45 +0000)
commit2c9cf3b73bc0d655e8521d1e440592ece129aa8c
tree7b3bb31f67faf9f50b29bfec5dd0b10022d99a26
parenteb0af241f163c6a3cc179534836aa2c15dbd2b21
Fix for bug 734252 - problem up converting striped mirror after image failure

lv_mirror_count was not able to handle mirrors of stripes properly.  When a
failed device is removed, the MIRRORED status flag is removed from the LV
conditionally based on the results of lv_mirror_count.  However, lv_mirror_count
trusted the MIRRORED flag - thinking any such LV must be mirrored.  It would
happily assign first_seg(lv)->area_count as the number of mirrors, but when
a mirrored striped LV was reduced to a simple striped LV area_count would be
the number of /stripes/ not the number of /mirrors/.  A result higher than 1
would be returned from lv_mirror_count, the MIRRORED flag would not be cleared,
and the LV would fail to be up-converted properly in lvconvert_mirrors_aux
because of it.
WHATS_NEW
lib/metadata/mirror.c
This page took 0.040172 seconds and 5 git commands to generate.