1
0
mirror of git://sourceware.org/git/lvm2.git synced 2025-01-11 09:18:25 +03:00

*** empty log message ***

This commit is contained in:
Jonathan Earl Brassow 2012-02-22 17:14:38 +00:00
parent 16b40da2e7
commit fe81ba59e8
2 changed files with 6 additions and 2 deletions

View File

@ -1,5 +1,6 @@
Version 2.02.93 - Version 2.02.93 -
==================================== ====================================
Fix 'build_parallel_areas_from_lv' to work properly with RAID 4/5/6
Version 2.02.92 - 20th February 2012 Version 2.02.92 - 20th February 2012
==================================== ====================================

View File

@ -3061,7 +3061,8 @@ struct dm_list *build_parallel_areas_from_lv(struct logical_volume *lv,
struct dm_list *parallel_areas; struct dm_list *parallel_areas;
struct seg_pvs *spvs; struct seg_pvs *spvs;
uint32_t current_le = 0; uint32_t current_le = 0;
struct lv_segment * uninitialized_var(seg); uint32_t raid_multiple;
struct lv_segment *seg = first_seg(lv);
if (!(parallel_areas = dm_pool_alloc(cmd->mem, sizeof(*parallel_areas)))) { if (!(parallel_areas = dm_pool_alloc(cmd->mem, sizeof(*parallel_areas)))) {
log_error("parallel_areas allocation failed"); log_error("parallel_areas allocation failed");
@ -3100,7 +3101,9 @@ struct dm_list *build_parallel_areas_from_lv(struct logical_volume *lv,
return_NULL; return_NULL;
current_le = spvs->le + spvs->len; current_le = spvs->le + spvs->len;
} while (current_le < lv->le_count); raid_multiple = (seg->segtype->parity_devs) ?
seg->area_count - seg->segtype->parity_devs : 1;
} while ((current_le * raid_multiple) < lv->le_count);
/* FIXME Merge adjacent segments with identical PV lists (avoids need for contiguous allocation attempts between successful allocations) */ /* FIXME Merge adjacent segments with identical PV lists (avoids need for contiguous allocation attempts between successful allocations) */