mirror of
git://sourceware.org/git/lvm2.git
synced 2025-02-09 13:57:55 +03:00
release 2.02.103
52 files changed, 598 insertions(+), 264 deletions(-)
This commit is contained in:
parent
0d03503a45
commit
04d9a52684
@ -1 +1 @@
|
||||
1.02.82-git (2013-09-23)
|
||||
1.02.82-git (2013-10-04)
|
||||
|
12
WHATS_NEW
12
WHATS_NEW
@ -1,14 +1,16 @@
|
||||
Version 2.02.103 -
|
||||
======================================
|
||||
Version 2.02.103 - 4th October 2013
|
||||
===================================
|
||||
Ensure vgid matches before removing vgname entry from lvmetad cache.
|
||||
Add --ignoreskippedcluster for exit status success when clustered VGs skipped.
|
||||
Fix 3min udev timeout so that it is applied for all LVM volumes.
|
||||
Fix 3 minute udev timeout so that it is applied for all LVM volumes.
|
||||
Fix thin/raid & activation config defaults with configure --disable-devmapper.
|
||||
Fix RAID calculation for sufficient allocatable space.
|
||||
Conversion from linear to mirror or RAID1 now honors mirror_segtype_default.
|
||||
lvconvert from linear to mirror or RAID1 now honors mirror_segtype_default.
|
||||
Add thin-performance configuration profile.
|
||||
Add lvm.conf allocation/thin_pool_chunk_size_policy option.
|
||||
Fix contiguous & cling allocation policies for parity RAID. (2.02.100)
|
||||
Have lvmconf --enable/disable-cluster reset/set use_lvmetad.
|
||||
Don't install separate command symlink in binary directory for 'lvm devtypes'.
|
||||
Don't install separate command symlink for 'lvm devtypes'. (2.02.101)
|
||||
Add seg_size_pe field to reports.
|
||||
Support start+length notation with command line PE ranges.
|
||||
Exit cleanly with message when pvmove cannot restart because LV is inactive.
|
||||
|
@ -1,5 +1,5 @@
|
||||
Version 1.02.82 -
|
||||
=====================================
|
||||
Version 1.02.82 - 4th October 2013
|
||||
==================================
|
||||
Define symbolic names for subsystem udev flags in libdevmapper for easier use.
|
||||
Make subsystem udev rules responsible for importing DM_SUBSYSTEM_UDEV_FLAG*.
|
||||
|
||||
|
@ -255,7 +255,7 @@ allocation {
|
||||
# Specify chunk size calculation policy for thin pool volumes.
|
||||
# Possible options are:
|
||||
# "generic" - if thin_pool_chunk_size is defined, use it.
|
||||
# Otherwise, calcucate the chunk size based on
|
||||
# Otherwise, calculate the chunk size based on
|
||||
# estimation and device hints exposed in sysfs:
|
||||
# the minimum_io_size. The chunk size is always
|
||||
# at least 64KiB.
|
||||
|
@ -1,4 +1,4 @@
|
||||
allocation {
|
||||
thin_pool_chunk_size_calculation = "performance"
|
||||
thin_pool_chunk_size_policy = "performance"
|
||||
thin_pool_zero = 0
|
||||
}
|
||||
|
@ -141,9 +141,9 @@
|
||||
# define DEFAULT_ACTIVATION 0
|
||||
#endif
|
||||
|
||||
# define DEFAULT_RESERVED_MEMORY 8192
|
||||
# define DEFAULT_RESERVED_STACK 64 /* KB */
|
||||
# define DEFAULT_PROCESS_PRIORITY -18
|
||||
#define DEFAULT_RESERVED_MEMORY 8192
|
||||
#define DEFAULT_RESERVED_STACK 64 /* KB */
|
||||
#define DEFAULT_PROCESS_PRIORITY -18
|
||||
|
||||
#define DEFAULT_AUTO_SET_ACTIVATION_SKIP 1
|
||||
#define DEFAULT_USE_LINEAR_TARGET 1
|
||||
|
@ -5541,7 +5541,7 @@ static int _recalculate_thin_pool_chunk_size_with_dev_hints(struct lvcreate_para
|
||||
struct cmd_context *cmd = pool_lv->vg->cmd;
|
||||
unsigned long previous_hint = 0, hint = 0;
|
||||
uint32_t chunk_size = lp->chunk_size;
|
||||
uint32_t default_chunk_size = lp->thin_chunk_size_calc_method == THIN_CHUNK_SIZE_CALC_METHOD_PERFORMANCE ?
|
||||
uint32_t default_chunk_size = lp->thin_chunk_size_calc_policy == THIN_CHUNK_SIZE_CALC_METHOD_PERFORMANCE ?
|
||||
DEFAULT_THIN_POOL_CHUNK_SIZE_PERFORMANCE*2 : DEFAULT_THIN_POOL_CHUNK_SIZE*2;
|
||||
|
||||
if (lp->passed_args & PASS_ARG_CHUNK_SIZE ||
|
||||
@ -5552,7 +5552,7 @@ static int _recalculate_thin_pool_chunk_size_with_dev_hints(struct lvcreate_para
|
||||
|
||||
dm_list_iterate_items(seg, &pool_data_lv->segments) {
|
||||
pv = seg_pv(seg, 0);
|
||||
if (lp->thin_chunk_size_calc_method == THIN_CHUNK_SIZE_CALC_METHOD_PERFORMANCE)
|
||||
if (lp->thin_chunk_size_calc_policy == THIN_CHUNK_SIZE_CALC_METHOD_PERFORMANCE)
|
||||
hint = dev_optimal_io_size(cmd->dev_types, pv_dev(pv));
|
||||
else
|
||||
hint = dev_minimum_io_size(cmd->dev_types, pv_dev(pv));
|
||||
|
@ -728,7 +728,7 @@ struct lvcreate_params {
|
||||
thin_discards_t discards; /* thin */
|
||||
#define THIN_CHUNK_SIZE_CALC_METHOD_GENERIC 0x01
|
||||
#define THIN_CHUNK_SIZE_CALC_METHOD_PERFORMANCE 0x02
|
||||
int thin_chunk_size_calc_method;
|
||||
int thin_chunk_size_calc_policy;
|
||||
|
||||
const char *origin; /* snap */
|
||||
const char *pool; /* thin */
|
||||
|
@ -582,7 +582,7 @@ static int _get_pool_chunk_size_calc(const char *str,
|
||||
*chunk_size = DEFAULT_THIN_POOL_CHUNK_SIZE_PERFORMANCE * 2;
|
||||
}
|
||||
else {
|
||||
log_error("Thin pool chunk size calculation method \"%s\" is unknown.", str);
|
||||
log_error("Thin pool chunk size calculation policy \"%s\" is unrecognised.", str);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -34,7 +34,7 @@ struct lvconvert_params {
|
||||
int wait_completion;
|
||||
int need_polling;
|
||||
|
||||
int thin_chunk_size_calc_method;
|
||||
int thin_chunk_size_calc_policy;
|
||||
uint32_t chunk_size;
|
||||
uint32_t region_size;
|
||||
|
||||
@ -2329,7 +2329,7 @@ static int _lvconvert_thinpool(struct cmd_context *cmd,
|
||||
if (!lp->pool_metadata_lv_name) {
|
||||
if (!update_pool_params(pool_lv->vg, lp->target_attr, lp->passed_args,
|
||||
pool_lv->le_count, pool_lv->vg->extent_size,
|
||||
&lp->thin_chunk_size_calc_method, &lp->chunk_size,
|
||||
&lp->thin_chunk_size_calc_policy, &lp->chunk_size,
|
||||
&lp->discards, &lp->poolmetadata_size, &lp->zero))
|
||||
return_0;
|
||||
|
||||
@ -2441,7 +2441,7 @@ static int _lvconvert_thinpool(struct cmd_context *cmd,
|
||||
}
|
||||
if (!update_pool_params(pool_lv->vg, lp->target_attr, lp->passed_args,
|
||||
pool_lv->le_count, pool_lv->vg->extent_size,
|
||||
&lp->thin_chunk_size_calc_method, &lp->chunk_size,
|
||||
&lp->thin_chunk_size_calc_policy, &lp->chunk_size,
|
||||
&lp->discards, &lp->poolmetadata_size, &lp->zero))
|
||||
return_0;
|
||||
}
|
||||
@ -2723,7 +2723,7 @@ static int lvconvert_single(struct cmd_context *cmd, struct lvconvert_params *lp
|
||||
|
||||
if (arg_count(cmd, thinpool_ARG) &&
|
||||
!get_pool_params(cmd, lv_config_profile(lv),
|
||||
&lp->passed_args, &lp->thin_chunk_size_calc_method,
|
||||
&lp->passed_args, &lp->thin_chunk_size_calc_policy,
|
||||
&lp->chunk_size, &lp->discards,
|
||||
&lp->poolmetadata_size, &lp->zero))
|
||||
goto_bad;
|
||||
|
@ -336,7 +336,7 @@ static int _update_extents_params(struct volume_group *vg,
|
||||
if (lp->create_thin_pool) {
|
||||
if (!update_pool_params(vg, lp->target_attr, lp->passed_args,
|
||||
lp->extents, vg->extent_size,
|
||||
&lp->thin_chunk_size_calc_method,
|
||||
&lp->thin_chunk_size_calc_policy,
|
||||
&lp->chunk_size, &lp->discards,
|
||||
&lp->poolmetadatasize, &lp->zero))
|
||||
return_0;
|
||||
@ -877,7 +877,7 @@ static int _lvcreate_params(struct lvcreate_params *lp,
|
||||
!get_stripe_params(cmd, &lp->stripes, &lp->stripe_size) ||
|
||||
(lp->create_thin_pool &&
|
||||
!get_pool_params(cmd, NULL, &lp->passed_args,
|
||||
&lp->thin_chunk_size_calc_method,
|
||||
&lp->thin_chunk_size_calc_policy,
|
||||
&lp->chunk_size, &lp->discards,
|
||||
&lp->poolmetadatasize, &lp->zero)) ||
|
||||
!_read_mirror_params(lp, cmd) ||
|
||||
|
Loading…
x
Reference in New Issue
Block a user