1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-12-21 13:34:40 +03:00
lvm2/lib
Jonathan Brassow bd0ee420b5 RAID: Allow remove/replace of sub-LVs composed of error segments.
When a device fails, we may wish to replace those segments with an
error segment.  (Like when a 'vgreduce --removemissing' removes a
failed device that happens to be a RAID image/meta.)  We are then left
with images that we will eventually want to remove or replace.

This patch allows us to pull out these virtual "error" sub-LVs.  This
allows a user to 'lvconvert -m -1 vg/lv' to extract the bad sub-LVs.
Sub-LVs with error segments are considered for extraction before other
possible devices so that good devices are not accidentally removed.

This patch also adds the ability to replace RAID images that contain error
segments.  The user will still be unable to run 'lvconvert --replace'
because there is no way to address the 'error' segment (i.e. no PV
that it is associated with).  However, 'lvconvert --repair' can be
used to replace the image's error segment with a new PV.  This is also
the most appropriate way to do it, since the LV will continue to be
reported as 'partial'.
2013-02-20 14:58:56 -06:00
..
activate clean-up: Another functiont that can use 'lv_layer' 2013-02-04 17:10:16 -06:00
cache cleanup: old style gcc 2013-02-05 16:54:12 +01:00
commands logging: add debug classes 2013-01-07 22:25:19 +00:00
config clean-up: Rename lvm.conf setting 'mirror_region_size' to 'raid_region_size' 2013-02-20 14:40:17 -06:00
datastruct Switch to return void 2012-02-08 12:52:58 +00:00
device logging: classify log_debug messages 2013-01-07 22:30:29 +00:00
display buffering: use unbuffered silent mode for liblvm 2012-08-26 00:15:45 +01:00
error cleanup: drop unneeded included header files 2012-08-23 14:37:20 +02:00
filters filters: add scm devices 2013-01-11 09:24:07 +01:00
format1 logging: classify log_debug messages 2013-01-07 22:30:29 +00:00
format_pool logging: classify log_debug messages 2013-01-07 22:30:29 +00:00
format_text fix: 'Couldn't read extent size' --> '... extent start' 2013-02-21 13:33:27 +01:00
freeseg cleanup: drop unneeded included header files 2012-08-23 14:37:20 +02:00
label logging: classify log_debug messages 2013-01-07 22:30:29 +00:00
locking logging: classify log_debug messages 2013-01-07 22:30:29 +00:00
log logging: add debug classes 2013-01-07 22:25:19 +00:00
metadata RAID: Allow remove/replace of sub-LVs composed of error segments. 2013-02-20 14:58:56 -06:00
mirror clean-up: Rename lvm.conf setting 'mirror_region_size' to 'raid_region_size' 2013-02-20 14:40:17 -06:00
misc logging: classify log_debug messages 2013-01-07 22:30:29 +00:00
mm logging: classify log_debug messages 2013-01-07 22:30:29 +00:00
raid RAID: Add support for RAID10 2012-08-24 15:34:19 -05:00
replicator cleanup: drop unneeded included header files 2012-08-23 14:37:20 +02:00
report report: leave empty report field for 0 2013-02-05 14:32:37 +01:00
snapshot Differentiate between snapshot status of "Invalid" and "Merge failed". 2012-01-20 22:02:04 +00:00
striped Add activation/use_linear_target enabled by default. (prajnoha) 2011-11-28 20:37:51 +00:00
thin thin: replace is_active with send_messages 2013-02-04 19:01:10 +01:00
unknown cleanup: drop unneeded included header files 2012-08-23 14:37:20 +02:00
uuid Revert the #include changes. Need to fix this at the #include site for now, and 2011-07-18 14:34:33 +00:00
zero cleanup: drop unneeded included header files 2012-08-23 14:37:20 +02:00
Makefile.in cleanup: drop unneeded included header files 2012-08-23 14:37:20 +02:00