summaryrefslogtreecommitdiffstats
path: root/daemons/dmeventd/dmeventd.c
diff options
context:
space:
mode:
authorJonathan Earl Brassow <jbrassow@redhat.com>2011-09-14 02:45:36 +0000
committerJonathan Earl Brassow <jbrassow@redhat.com>2011-09-14 02:45:36 +0000
commit9cb27929e95e6c89e0b1d1350d57ff6f0440f3de (patch)
tree7b3bb31f67faf9f50b29bfec5dd0b10022d99a26 /daemons/dmeventd/dmeventd.c
parent46f0efbfce7bf9a7fccc410931636b1b5a006998 (diff)
downloadlvm2-9cb27929e95e6c89e0b1d1350d57ff6f0440f3de.tar.gz
lvm2-9cb27929e95e6c89e0b1d1350d57ff6f0440f3de.tar.xz
lvm2-9cb27929e95e6c89e0b1d1350d57ff6f0440f3de.zip
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.
Diffstat (limited to 'daemons/dmeventd/dmeventd.c')
0 files changed, 0 insertions, 0 deletions