1
0
mirror of git://sourceware.org/git/lvm2.git synced 2025-01-03 05:18:29 +03:00
lvm2/lib/metadata
David Teigland aecf542126 metadata: prevent writing beyond metadata area
lvm uses a bcache block size of 128K.  A bcache block
at the end of the metadata area will overlap the PEs
from which LVs are allocated.  How much depends on
alignments.  When lvm reads and writes one of these
bcache blocks to update VG metadata, it can also be
reading and writing PEs that belong to an LV.

If these overlapping PEs are being written to by the
LV user (e.g. filesystem) at the same time that lvm
is modifying VG metadata in the overlapping bcache
block, then the user's updates to the PEs can be lost.

This patch is a quick hack to prevent lvm from writing
past the end of the metadata area.
2018-10-29 16:53:17 -05:00
..
cache_manip.c cache: drop metadata_format validation 2018-08-07 17:57:00 +02:00
lv_alloc.h build: Don't generate symlinks in include/ dir 2018-05-14 10:30:20 +01:00
lv_manip.c lvresize: vdo support 2018-07-09 15:28:35 +02:00
lv.c vdo: data percentage 2018-07-09 15:28:35 +02:00
lv.h Remove unused clvm variations for active LVs 2018-06-07 16:17:04 +01:00
merge.c check_lv_segment: internal vdo segment validation 2018-07-09 15:28:35 +02:00
metadata-exported.h lvcreate: vdo support 2018-07-09 15:29:12 +02:00
metadata.c Remove lvmetad 2018-07-11 11:26:42 -05:00
metadata.h Remove lvmetad 2018-07-11 11:26:42 -05:00
mirror.c metadata: prevent writing beyond metadata area 2018-10-29 16:53:17 -05:00
pool_manip.c Remove unused clvm variations for active LVs 2018-06-07 16:17:04 +01:00
pv_alloc.h doc: change fsf address 2016-01-21 12:11:37 +01:00
pv_manip.c pvresize: add missing return 2018-06-08 14:36:56 +02:00
pv_map.c build: Don't generate symlinks in include/ dir 2018-05-14 10:30:20 +01:00
pv_map.h build: Don't generate symlinks in include/ dir 2018-05-14 10:30:20 +01:00
pv.c build: Don't generate symlinks in include/ dir 2018-05-14 10:30:20 +01:00
pv.h device_mapper: rename libdevmapper.h -> all.h 2018-06-08 12:31:45 +01:00
raid_manip.c Revert "raid: fix left behind SubLVs" 2018-10-25 14:35:56 +02:00
segtype.c segtype: add linear 2018-06-05 16:23:18 +02:00
segtype.h vdo: introduce segment types and manip functions 2018-07-09 15:28:35 +02:00
snapshot_manip.c Remove unused clvm variations for active LVs 2018-06-07 16:17:04 +01:00
takeover_matrix.h lvconvert: add infrastructure for RaidLV reshaping support 2017-02-24 05:20:58 +01:00
thin_manip.c Remove unused clvm variations for active LVs 2018-06-07 16:17:04 +01:00
vdo_manip.c cov: drop uneeded header files 2018-10-15 17:49:44 +02:00
vg.c cov: drop uneeded header files 2018-10-15 17:49:44 +02:00
vg.h Remove lvmetad 2018-07-11 11:26:42 -05:00