1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-12-21 13:34:40 +03:00
lvm2/lib
Zdenek Kabelac 7a9efc5fae lvresize: allow mixing striped with errors or zero
Enabled extension/mixing of stripes/linears, error and zero
segtype LVs with stripes/linear, error and zero segtypes.

It is not very useful in practice, as the user cannot store any real
data on error or zero segtypes, but it may get some uses in
some scenarios where i.e. some portion of the device should not be
readable. Mixing of types happens on 'extent_size' level:

  lvcreate -L1 -n lv vg
  lvextend --type error  -L+1 vg/lv
  lvextend --type zero   -L+1 vg/lv
  lvextend --type linear -L+1 vg/lv
  lvextend --type striped -L+1 vg/lv

  lvs -o+segtype,seg_size vg

Note: when the type is not specified, the last segment type is
automatically selected.

It's also a small 'can of worms' since we can't tell LVs if
the LV is linear/error/zero or their mixtures. So the meaning behind
them may need some updates.

We already have this types of LV created i.e by:

  vgreduce --removemissing --force

where missing LV segments have been replaced by either
error or zero segtype (lvm.conf).

TODO: it might be worth adding a message while such device is activated.
2021-03-18 18:56:49 +01:00
..
activate dev_manager: skip also zero targets 2021-03-18 18:34:57 +01:00
cache hash: use individual hint sizes 2021-03-08 15:33:15 +01:00
cache_segtype cachevol: move flag setting after taking archive 2019-10-17 13:03:50 +02:00
commands config: keep issue_discards in config struct 2021-03-14 16:59:24 +01:00
config config: correct option name 2021-03-14 16:59:24 +01:00
datastruct cleanup: eliminate unused assign 2021-03-11 00:18:01 +01:00
device cov: void unused result 2021-03-15 11:13:24 +01:00
display lvdisplay: fix show of merged thin snapshot 2021-02-17 11:21:35 +01:00
error device_mapper: remove dbg_malloc. 2018-06-08 13:40:53 +01:00
filters cleanup: typo 2021-03-15 18:59:15 +01:00
format_text cov: variable initialization 2021-03-10 01:34:58 +01:00
freeseg device_mapper: remove dbg_malloc. 2018-06-08 13:40:53 +01:00
integrity cleanup: no backtraces needed after log_error 2021-03-10 01:11:52 +01:00
label debug: drop stack from regular code flow 2021-03-15 11:13:24 +01:00
locking lvmlocdk: correct creation of dm path vg sanlock LV 2021-02-17 11:53:19 +01:00
log debug: keep microseconds aligned 2021-03-15 11:13:24 +01:00
lvmpolld device usage based on devices file 2021-02-23 16:43:32 -06:00
metadata lvresize: allow mixing striped with errors or zero 2021-03-18 18:56:49 +01:00
mirror lv_info: missing check for info.exists 2021-03-14 16:34:38 +01:00
misc signals: add interruptible usleep 2021-03-14 16:34:38 +01:00
mm cov: initialize value 2021-03-11 00:18:01 +01:00
notify build: Don't generate symlinks in include/ dir 2018-05-14 10:30:20 +01:00
properties build: Don't generate symlinks in include/ dir 2018-05-14 10:30:20 +01:00
raid lv_info: missing check for info.exists 2021-03-14 16:34:38 +01:00
report cov: ensure settings is set 2021-03-10 01:35:02 +01:00
snapshot typo: fixes 2021-02-08 23:53:41 +01:00
striped device_mapper: remove dbg_malloc. 2018-06-08 13:40:53 +01:00
thin targets: use target_present_version 2021-02-08 23:43:38 +01:00
unknown device_mapper: remove dbg_malloc. 2018-06-08 13:40:53 +01:00
uuid build: Don't generate symlinks in include/ dir 2018-05-14 10:30:20 +01:00
vdo vdo: just one probe is enough 2021-02-17 11:21:35 +01:00
writecache typo: fixes 2021-02-08 23:53:41 +01:00
zero device_mapper: remove dbg_malloc. 2018-06-08 13:40:53 +01:00
Makefile.in device usage based on devices file 2021-02-23 16:43:32 -06:00