1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-12-22 17:35:59 +03:00
lvm2/lib/metadata
Jonathan Brassow 5555d2a000 RAID: Fix segfault when attempting to replace RAID 4/5/6 device
Commit 8767435ef8 allowed RAID 4/5/6
LV to be extended properly, but introduced a regression in device
replacement - a critical component of fault tolerance.

When only 1 or 2 drives are being replaced, the 'area_count' needed
can be equal to the parity_count.  The 'area_multiple' for RAID 4/5/6
was computed as 'area_count - parity_devs', which could result in
'area_multiple' being 0.  This would ultimately lead to a division by
zero error.  Therefore, in calc_area_multiple, it is important to take
into account the number of areas that are being requested - just as
we already do in _alloc_init.
2012-07-24 19:02:06 -05:00
..
lv_alloc.h discards: don't discard reconfigured extents 2012-06-27 22:12:01 +01:00
lv_manip.c RAID: Fix segfault when attempting to replace RAID 4/5/6 device 2012-07-24 19:02:06 -05:00
lv.c Fix missing break 2012-02-27 11:13:48 +00:00
lv.h Thin add new display field for lvs 2012-01-19 15:34:32 +00:00
merge.c Using %u modifier to print unsigned values. 2012-03-12 14:41:42 +00:00
metadata-exported.h thin: add discard support for thin pool 2012-07-18 14:36:57 +02:00
metadata.c activate: add autoactivation hooks 2012-06-28 09:42:47 -04:00
metadata.h Pass 'single_device' parameter down to suppress 'Can't find uuid' messages 2012-02-29 02:35:35 +00:00
mirror.c discards: don't discard reconfigured extents 2012-06-27 22:12:01 +01:00
pv_alloc.h discards: split discard from release_pv_segment 2012-06-27 22:11:54 +01:00
pv_manip.c discards: split discard from release_pv_segment 2012-06-27 22:11:54 +01:00
pv_map.c Track unreserved space for all alloc policies and then permit NORMAL to place 2012-02-01 02:10:45 +00:00
pv_map.h Track unreserved space for all alloc policies and then permit NORMAL to place 2012-02-01 02:10:45 +00:00
pv.c Move lvmcache data structures behind an API (making the structures private to 2012-02-10 01:28:27 +00:00
pv.h Defer writing PV labels to vg_write. 2011-06-01 19:29:31 +00:00
raid_manip.c Allow a subset of failed devices to be replaced in RAID LVs. 2012-04-24 20:05:31 +00:00
replicator_manip.c add thin_manip.c like the other manip files 2011-09-06 19:25:42 +00:00
segtype.c Handle metadata with unknown segment types more gracefully. 2009-10-16 17:41:49 +00:00
segtype.h Use a more correct macro for 'seg_is_linear' 2011-10-14 14:21:32 +00:00
snapshot_manip.c Reinstate support for format1 snapshots, but issue deprecated warning. 2011-12-20 00:02:18 +00:00
thin_manip.c thin: add discard support for thin pool 2012-07-18 14:36:57 +02:00
vg.c Disallow changing cluster attribute of VG while RAID LVs are active. 2012-04-25 13:38:41 +00:00
vg.h Add free_orphan_vg 2012-02-13 11:03:59 +00:00