1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-12-21 13:34:40 +03:00

pre-release

This commit is contained in:
Alasdair Kergon 2012-01-26 14:02:42 +00:00
parent b475be8d77
commit a1991f101d
5 changed files with 56 additions and 54 deletions

View File

@ -1,19 +1,17 @@
Version 2.02.89 - Version 2.02.89 - 26th January 2012
================================== ===================================
Add missing check for uname result in clvmd TEST processing. Add missing check for uname result in clvmd TEST processing.
Fix memleak in target_version() error path (unsupported LIST_VERSIONS). Fix memleak in target_version() error path (unsupported LIST_VERSIONS).
Limit alignment to 32bit values. Limit data_alignment and data_alignment_offset to 32bit values.
Check for correctness of uint64 dev_size value. Check for correctness of uint64 dev_size value in format_text.
Rename origin_only parameter to more generic flag use_layer for lv_info().
Thin pools have segment fields thin_count, zero, transaction_id. Thin pools have segment fields thin_count, zero, transaction_id.
Each new created LV volume has creation lv_time and lv_host. Add data_percent and metadata_percent for thin pools to lvs -v.
Print data_percent and metadata_percent for verbose lvs. Add data_lv & metadata_lv fields to lvs for thin pools.
Thin pool support lvs data_percent, metadata_percent, data/metadata_lv. Add data_percent & pool_lv fields to lvs for thin volumes.
Thin volumes support lvs options data_percent, pool_lv. Rename origin_only parm to use_layer for lv_info and use with thin LVs.
Update lv_info to use -real layer for origin_only LVs.
Add lv_thin_pool_transaction_id to read the transaction_id value. Add lv_thin_pool_transaction_id to read the transaction_id value.
Use suspend|resume_origin_only when up-converting RAID, as mirrors do. Use {suspend,resume}_origin_only when up-converting RAID, as mirrors do.
Fix the way RAID meta LVs are added to the dependency tree. Always add RAID metadata LVs to deptree (even when origin_only is set).
Change exclusive LV activation logic to try local node before remote nodes. Change exclusive LV activation logic to try local node before remote nodes.
Add CLVMD_FLAG_REMOTE to skip processing on local node. Add CLVMD_FLAG_REMOTE to skip processing on local node.
Prompt if request is made to remove a snapshot whose "Merge failed". Prompt if request is made to remove a snapshot whose "Merge failed".
@ -21,37 +19,37 @@ Version 2.02.89 -
Don't allow a user to merge an invalid snapshot. Don't allow a user to merge an invalid snapshot.
Use m and M lv_attr to indicate that a snapshot merge failed in lvs. Use m and M lv_attr to indicate that a snapshot merge failed in lvs.
Differentiate between snapshot status of "Invalid" and "Merge failed". Differentiate between snapshot status of "Invalid" and "Merge failed".
Lookup snapshot usage percent of origin volume when a snapshot is merging. Report snapshot usage percent of origin volume when a snapshot is merging.
Update lvdisplay with backward compat. config opt. lvm1_compatible_display. Require global/lvdisplay_shows_full_device_path for (bogus) lvm1-style paths.
Do not report linear segtype for non-striped targets. Do not report linear segtype for non-striped targets.
Keep info about creation host and time for each logical volume. Record creation host & time for each LV and report as lv_time & lv_host.
Make error message hit when preallocated memlock memory exceeded clearer. Make error message hit when preallocated memlock memory exceeded clearer.
Use R lv_attr to indicate read-only activation of non-read-only device in lvs. Use R lv_attr to indicate read-only activation of non-read-only device in lvs.
Show read-only activation override in lvdisplay & add 4 to perms in -c. Show read-only activation override in lvdisplay & add 4 to perms in -c.
Add activation/read_only_volume_list to override LV permission in metadata. Add activation/read_only_volume_list to override LV permission in metadata.
Give priority to emcpower devices with duplicate PVIDs. Give priority to emcpower devices with duplicate PVIDs.
Add check for error in _adjust_policy_params() (lvextend --use-policies). Add check for error in _adjust_policy_params() (lvextend --use-policies).
Supports rounding of percentage (%LV, %VG...) for LV resize upward. Round specified percentages upwards (%LV, %VG...) when resizing LVs.
Use dmeventd_lvm2_command in dmeventd plugins snapshot, raid, mirror. Use dmeventd_lvm2_command in dmeventd plugins snapshot, raid, mirror.
Add helper dmeventd_lvm2_command() into libdevmapper-event-lvm2 library. Add helper dmeventd_lvm2_command() to libdevmapper-event-lvm2 library.
Updated documentation for dmeventd. Update documentation for dmeventd.
Drop extra stat call before opening device. Remove unnecessary stat before opening device in dev_open_flags.
Reduce number of lstat calls when selecting device alias. Reduce number of lstat calls when selecting device alias.
Add function to inialize common structure device members. Add _dev_init to initialize common struct device members.
Always zalloc device structure during initialization. Always zalloc struct device during initialization.
Fix missing thread list manipulation protection in dmeventd. Fix missing thread list manipulation protection in dmeventd.
Do not derefence lv pointer in _percent_run() function before NULL check. Do not derefence lv pointer in _percent_run() function before NULL check.
Allow empty strings for description and creation_host config fields. Allow empty strings for description and creation_host config fields.
Issue deprecation warning when removing last lvm1-format snapshot. Issue deprecation warning when removing last lvm1-format snapshot.
Reinstate support for snapshot removal with lvm1 format. (2.02.86) Reinstate support for snapshot removal with lvm1 format. (2.02.86)
Add policy based automated repair of RAID logical volumes Add policy-based automated repair of RAID logical volumes.
Don't allow two images to be split and tracked from a RAID LV at one time Don't allow two images to be split and tracked from a RAID LV at one time.
Don't allow size change of RAID LV that is tracking changes for a split image Don't allow size change of RAID LV that is tracking changes for a split image.
Don't allow size change of RAID sub-LVs independently Don't allow size change of RAID sub-LVs independently.
Don't allow name change of RAID LV that is tracking changes for a split image Don't allow name change of RAID LV that is tracking changes for a split image.
Do not allow users to change the name of RAID sub-LVs independently Do not allow users to change the name of RAID sub-LVs independently.
Do not allow users to change permissions on RAID sub-LVs Do not allow users to change permissions on RAID sub-LVs.
Support the ability to replace specific devices in a RAID array via lvconvert. Allow lvconvert to replace specified devices in a RAID array.
Add activation/use_linear_target enabled by default. Add activation/use_linear_target enabled by default.
Use gcc warning options only with .c to .o compilation. Use gcc warning options only with .c to .o compilation.
Move y/n prompts to stderr and repeat if response has both 'n' and 'y'. Move y/n prompts to stderr and repeat if response has both 'n' and 'y'.
@ -64,31 +62,31 @@ Version 2.02.89 -
Add query before removing snapshots when inactive snapshot origin is removed. Add query before removing snapshots when inactive snapshot origin is removed.
Allow changing availability state of snapshots. Allow changing availability state of snapshots.
Skip non-virtual snapshots for availability change for lvchange with vg name. Skip non-virtual snapshots for availability change for lvchange with vg name.
Adjusted mirror region size only for mirrors and raids. Skip adjusting mirror region size unless mirror or raid.
Reorder prompt conditions for removal of active volumes. Reorder prompt conditions for removal of active volumes.
Avoid 'mda inconsistency' by properly registering UNLABELLED_PV flag (2.02.86) Avoid 'mda inconsistency' by properly registering UNLABELLED_PV flag.(2.02.86)
Fix --enable-static_link unless using --enable-dmeventd / --enable-udev_sync. Fix --enable-static_link unless using --enable-dmeventd / --enable-udev_sync.
Move gentoo MAKEDEV to /sbin in lvm2create_initrd. Move gentoo MAKEDEV to /sbin in lvm2create_initrd.
Add filter to avoid scan of device if it is part of active multipath. Add filter to avoid scan of device if it is part of active multipath.
Add missing default $LVM_VG_NAME usage for snapshots. Add missing default $LVM_VG_NAME usage for snapshots.
Fix extent_count overflow with lvextend. Avoid extent_count overflow with lvextend.
Add missing lvrename mirrored log recursion in for_each_sub_lv. Add missing lvrename mirrored log recursion in for_each_sub_lv.
Improve lv_extend stack reporting. Improve lv_extend stack reporting.
Increase virtual segment size instead of creating multiple segment list. Increase virtual segment size instead of creating multiple segment list.
Add last_seg(lv) internal function. Add last_seg(lv) internal function.
Support empty string for log/prefix. Support empty string for log/prefix.
Fix regression that allowed mirrored logs for cluster mirrors. Disallow mirrored logs for cluster mirrors. (2.02.72)
Don't print char type[8] as a plain string in pvck PV type. Don't print char type[8] as a plain string in pvck PV type.
Use vg memory pool implicitely for vg read. Use vg memory pool implicitly for vg read.
Always use vg memory pool for allocated lv segment. Always use vg memory pool for allocated lv segment.
Remove extra 4kB buffer allocated on stack in print_log(). Remove extra 4kB buffer allocated on stack in print_log().
Make move_lv_segment non-static function and use dm_list function. Make move_lv_segment non-static function and use dm_list function.
Pass exclusive LV locks to all nodes in the cluster. Pass exclusive LV locks to all nodes in the cluster.
Improve lvcreate man documentation of the chunksize option. Improve lvcreate chunksize man page description.
Improve man page style for lvcreate, lvs. Improve man page style for lvcreate & lvs.
Avoid recursive calls to dmeventd in its LVM plugins. Avoid recursive calls to dmeventd in its LVM plugins.
Log dev name now returned to kernel for registering during cmirror CTR. Log dev name now returned to kernel for registering during cmirror CTR.
Fix lv_info open_count test for disabled verify_udev_operations (2.02.86). Fix lv_info open_count test for disabled verify_udev_operations. (2.02.86)
Simplify code for lvm worker thread in clvmd. Simplify code for lvm worker thread in clvmd.
Use pthread_barrier to synchronize clvmd threads at startup. Use pthread_barrier to synchronize clvmd threads at startup.
Limit clvmd's thread size to 128KiB and ignore activation/reserved_stack. Limit clvmd's thread size to 128KiB and ignore activation/reserved_stack.
@ -100,9 +98,9 @@ Version 2.02.89 -
Add ability to convert mirror segtype to RAID1 segtype. Add ability to convert mirror segtype to RAID1 segtype.
Add ability to convert from linear to RAID1. Add ability to convert from linear to RAID1.
Add ability to extend mirrors with '--nosync' option. Add ability to extend mirrors with '--nosync' option.
Fix splitmirror in cluster having different DM/LVM views of storage. Fix splitmirror LV names to maintain consistent state in a cluster.
Fix improper udev settings during suspend/resume for mirror sub-LVs. Apply appropriate udev flags when suspending/resuming mirror sub-LVs.
Fix vgsplit when there are mirrors that have mirrored logs. Fix vgsplit to handle mirrored logs.
Clarify multi-name device filter pattern matching explanation in lvm.conf. Clarify multi-name device filter pattern matching explanation in lvm.conf.
Introduce lv_send_message and dev_manager_send_message. Introduce lv_send_message and dev_manager_send_message.
Introduce revert_lv for better pvmove cleanup. Introduce revert_lv for better pvmove cleanup.
@ -134,19 +132,19 @@ Version 2.02.89 -
Fix clvmd processing of invalid request on local socket. Fix clvmd processing of invalid request on local socket.
Fix command line option decoding. Fix command line option decoding.
Reset LV status when unlinking LV from VG. Reset LV status when unlinking LV from VG.
Fix overly strict extent-count divisibility requirements for striped mirrors. Fix overly-strict extent-count divisibility requirements for striped mirrors.
Fix rounding direction in lvresize when reducing volume size. Fix rounding direction in lvresize when reducing volume size.
Fix possible overflow of size if %FREE or %VG is used. Fix possible overflow of size if %FREE or %VG is used.
Fix vgchange activation of snapshot with virtual origin. Fix vgchange activation of snapshot with virtual origin.
Activate virtual snapshot origin exclusively (only on local node in cluster). Activate virtual snapshot origin exclusively (only on local node in cluster).
Fix lv_mirror_count to handle mirrored stripes properly. Fix lv_mirror_count to handle mirrored stripes properly.
Fix failure to down-convert a mirror to linear due to udev "dev open" conflict Fix failure to down-convert a mirror to linear due to udev "dev open" conflict
Fix mirrored log creation when PE size is small - force log_size >= region_size Fix mirrored log creation when PE size is small: use log_size >= region_size.
Fix log size calculation when only a log is being added to a mirror. Fix log size calculation when only a log is being added to a mirror.
Add 7th lv_attr char to show the related kernel target. Add 7th lv_attr char to show the related kernel target.
Terminate pv_attr field correctly. (2.02.86) Terminate pv_attr field correctly. (2.02.86)
Fix 'not not' typo in pvcreate man page. Fix 'not not' typo in pvcreate man page.
Improve man page style for fsadm, lvreduce, lvremove, lvrename, lvresize. Improve man page style for fsadm, lvreduce, lvremove, lvrename & lvresize.
Support break for vgchange and vgrefresh operation. Support break for vgchange and vgrefresh operation.
Switch int to unsigned type for pvmetadatacopies for pv_create(). Switch int to unsigned type for pvmetadatacopies for pv_create().
Replace :space: with [\t ] for awk in vgimportclone (not widely supported). Replace :space: with [\t ] for awk in vgimportclone (not widely supported).

View File

@ -15,6 +15,7 @@ Version 1.02.68 - 26th January 2012
Include a copy of kernel DM documentation in doc/kernel. Include a copy of kernel DM documentation in doc/kernel.
Improve man page style for dmsetup and mention more targets. Improve man page style for dmsetup and mention more targets.
Fix _get_proc_number to be tolerant of malformed /proc/misc entries. Fix _get_proc_number to be tolerant of malformed /proc/misc entries.
Fix missing thread list manipulation protection in dmeventd.
Add ExecReload to dm-event.service for systemd to reload dmeventd properly. Add ExecReload to dm-event.service for systemd to reload dmeventd properly.
Add dm_config_tree_find_str_allow_empty and dm_config_find_str_allow_empty. Add dm_config_tree_find_str_allow_empty and dm_config_find_str_allow_empty.
Fix compile-time pool memory locking with DEBUG_MEM. Fix compile-time pool memory locking with DEBUG_MEM.

View File

@ -446,10 +446,13 @@ global {
# setting. # setting.
mirror_segtype_default = "mirror" mirror_segtype_default = "mirror"
# Whether to lvdisplay LV name in lvm1 compatible format /dev/vgname/lvname # The default format for displaying LV names in lvdisplay was changed
# Default is now to display LV name and path (if exists) separately. # in version 2.02.89 to show the LV name and path separately.
# If the old behavior is preffered use set to 1. # Previously this was always shown as /dev/vgname/lvname even when that
# lvm1_compatible_display = 1 # was never a valid path in the /dev filesystem.
# Set to 1 to reinstate the previous format.
#
# lvdisplay_shows_full_device_path = 0
} }
activation { activation {

View File

@ -49,7 +49,7 @@
#define DEFAULT_PRIORITISE_WRITE_LOCKS 1 #define DEFAULT_PRIORITISE_WRITE_LOCKS 1
#define DEFAULT_USE_MLOCKALL 0 #define DEFAULT_USE_MLOCKALL 0
#define DEFAULT_METADATA_READ_ONLY 0 #define DEFAULT_METADATA_READ_ONLY 0
#define DEFAULT_LVM1_COMPATIBLE_DISPLAY 0 #define DEFAULT_LVDISPLAY_SHOWS_FULL_DEVICE_PATH 0
#define DEFAULT_MIRROR_SEGTYPE "mirror" #define DEFAULT_MIRROR_SEGTYPE "mirror"
#define DEFAULT_MIRRORLOG "disk" #define DEFAULT_MIRRORLOG "disk"

View File

@ -526,14 +526,14 @@ int lvdisplay_full(struct cmd_context *cmd,
log_print("--- Logical volume ---"); log_print("--- Logical volume ---");
lvm1compat = find_config_tree_int(cmd, "global/lvm1_compatible_display", lvm1compat = find_config_tree_int(cmd, "global/lvdisplay_shows_full_device_path",
DEFAULT_LVM1_COMPATIBLE_DISPLAY); DEFAULT_LVDISPLAY_SHOWS_FULL_DEVICE_PATH);
if (lvm1compat) { if (lvm1compat)
/* Note: Invisible devices do not get /dev/vg/lv */ /* /dev/vgname/lvname doen't actually exist for internal devices */
log_print("LV Name %s%s/%s", log_print("LV Name %s%s/%s",
lv->vg->cmd->dev_dir, lv->vg->name, lv->name); lv->vg->cmd->dev_dir, lv->vg->name, lv->name);
} else if (lv_is_visible(lv)) { else if (lv_is_visible(lv)) {
/* Thin pool does not have /dev/vg/name link */ /* Thin pool does not have /dev/vg/name link */
if (!lv_is_thin_pool(lv)) if (!lv_is_thin_pool(lv))
log_print("LV Path %s%s/%s", log_print("LV Path %s%s/%s",
@ -541,7 +541,7 @@ int lvdisplay_full(struct cmd_context *cmd,
lv->vg->name, lv->name); lv->vg->name, lv->name);
log_print("LV Name %s", lv->name); log_print("LV Name %s", lv->name);
} else } else
log_print("Invisible LV Name %s", lv->name); log_print("Internal LV Name %s", lv->name);
log_print("VG Name %s", lv->vg->name); log_print("VG Name %s", lv->vg->name);
log_print("LV UUID %s", uuid); log_print("LV UUID %s", uuid);