1
0
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:
Alasdair G Kergon 2013-10-04 14:32:23 +01:00
parent 0d03503a45
commit 04d9a52684
12 changed files with 26 additions and 24 deletions

View File

@ -1 +1 @@
2.02.103(2)-git (2013-09-23)
2.02.103(2)-git (2013-10-04)

View File

@ -1 +1 @@
1.02.82-git (2013-09-23)
1.02.82-git (2013-10-04)

View File

@ -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.

View File

@ -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*.

View File

@ -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.

View File

@ -1,4 +1,4 @@
allocation {
thin_pool_chunk_size_calculation = "performance"
thin_pool_chunk_size_policy = "performance"
thin_pool_zero = 0
}

View File

@ -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

View File

@ -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));

View File

@ -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 */

View File

@ -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;
}

View File

@ -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;

View File

@ -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) ||