2017-12-18 20:43:09 +00:00
Version 1.02.147 -
=====================================
2018-03-27 21:07:13 +02:00
Reuse uname() result for mirror target.
2018-03-20 11:13:22 +01:00
Recognize also mounted btrfs through dm_device_has_mounted_fs().
2018-03-14 21:00:46 +01:00
Add missing log_error() into dm_stats_populate() returning 0.
2018-03-14 21:01:22 +01:00
Avoid calling dm_stats_populat() for DM devices without any stats regions.
2018-03-14 18:08:16 +01:00
Support DM_DEBUG_WITH_LINE_NUMBERS envvar for debug msg with source:line.
2018-03-05 15:09:16 +01:00
Configured command for thin pool threshold handling gets whole environment.
2018-02-12 10:27:16 +01:00
Fix tests for failing dm_snprintf() in stats code.
2018-02-01 20:53:39 +01:00
Parsing mirror status accepts 'userspace' keyword in status.
2018-01-09 20:25:43 +00:00
Introduce dm_malloc_aligned for page alignment of buffers.
2017-12-18 20:43:09 +00:00
2017-12-18 20:36:10 +00:00
Version 1.02.146 - 18th December 2017
=====================================
2017-12-07 17:52:01 +01:00
Activation tree of thin pool skips duplicated check of pool status.
2017-12-04 15:27:05 +01:00
Remove code supporting replicator target.
2017-12-04 15:05:44 +01:00
Do not ignore failure of _info_by_dev().
2017-11-24 13:57:22 +01:00
Propagate delayed resume for pvmove subvolumes.
2017-11-10 13:55:04 +01:00
Suppress integrity encryption keys in 'table' output unless --showkeys supplied.
2017-11-03 04:42:54 +00:00
2017-11-03 02:28:55 +00:00
Version 1.02.145 - 3rd November 2017
====================================
2017-11-01 15:25:54 +01:00
Keep Install section only in dm-event.socket systemd unit.
2017-10-26 17:47:13 +01:00
Issue a specific error with dmsetup status if device is unknown.
2017-10-18 00:03:08 +02:00
Fix RT_LIBS reference in generated libdevmapper.pc for pkg-config
2017-10-06 22:16:58 +01:00
2017-10-06 22:10:48 +01:00
Version 1.02.144 - 6th October 2017
===================================
2017-10-04 13:58:21 +02:00
Schedule exit when received SIGTERM in dmeventd.
2017-09-21 15:23:24 +02:00
Also try to unmount /boot on blkdeactivate -u if on top of supported device.
2017-09-21 15:10:23 +02:00
Use blkdeactivate -r wait in blk-availability systemd service/initscript.
2017-09-21 15:04:45 +02:00
Add blkdeactivate -r wait option to wait for MD resync/recovery/reshape.
2017-09-21 13:39:52 +02:00
Fix blkdeactivate regression with failing DM/MD devs deactivation (1.02.142).
2017-09-21 17:03:42 +02:00
Fix typo in blkdeactivate's '--{dm,lvm,mpath}options' option name.
2017-09-20 14:21:38 +02:00
Correct return value testing when get reserved values for reporting.
2017-09-14 23:41:17 +01:00
Take -S with dmsetup suspend/resume/clear/wipe_table/remove/deps/status/table.
2017-09-13 20:46:25 +01:00
2017-09-13 20:38:29 +01:00
Version 1.02.143 - 13th September 2017
======================================
2017-08-22 10:19:40 +02:00
Restore umask when creation of node fails.
2017-08-04 19:38:34 +01:00
Add --concise to dmsetup create for many devices with tables in one command.
2017-08-04 14:45:20 +01:00
Accept minor number without major in library when it knows dm major number.
2017-07-25 01:13:14 +01:00
Introduce single-line concise table output format: dmsetup table --concise
2017-07-20 17:19:09 +01:00
2017-07-20 16:57:27 +01:00
Version 1.02.142 - 20th July 2017
2017-06-28 17:00:49 +01:00
=================================
2017-07-10 12:35:53 +02:00
Create /dev/disk/by-part{uuid,label} and gpt-auto-root symlinks with udev.
2017-06-28 17:00:49 +01:00
2017-06-28 16:38:46 +01:00
Version 1.02.141 - 28th June 2017
=================================
2017-06-26 18:22:40 +02:00
Fix reusing of dm_task structure for status reading (used by dmeventd).
2017-06-24 13:24:26 +02:00
Add dm_percent_to_round_float for adjusted percentage rounding.
2017-06-24 00:06:12 +02:00
Reset array with dead rimage devices once raid gets in sync.
2017-06-23 21:15:37 +02:00
Drop unneeded --config option from raid dmeventd plugin.
2017-06-16 13:20:47 +02:00
dm_get_status_raid() handle better some incosistent md statuses.
2017-06-07 19:21:10 +01:00
Accept truncated files in calls to dm_stats_update_regions_from_fd().
2017-04-19 19:57:00 +02:00
Restore Warning by 5% increment when thin-pool is over 80% (1.02.138).
2017-05-03 11:26:58 +01:00
2017-05-03 11:23:31 +01:00
Version 1.02.140 - 3rd May 2017
===============================
2017-04-18 20:37:53 +01:00
Add missing configure --enable-dmfilemapd status message and fix --disable.
2017-04-13 01:47:47 +01:00
2017-04-13 00:43:31 +01:00
Version 1.02.139 - 13th April 2017
2017-03-28 16:14:03 +01:00
==================================
2017-04-01 12:13:37 +02:00
Fix assignment in _target_version() when dm task can't run.
2017-04-12 17:41:29 +01:00
Flush stdout on each iteration when using --count or --interval.
Show detailed error message when execvp fails while starting dmfilemapd.
Fix segmentation fault when dmfilemapd is run with no arguments.
Numerous minor dmfilemapd fixes from coverity.
2017-03-28 16:14:03 +01:00
2017-03-28 15:28:53 +01:00
Version 1.02.138 - 28th March 2017
==================================
Support additional raid5/6 configurations.
2017-02-24 22:41:42 +01:00
Provide dm_tree_node_add_cache_target@base compatible symbol.
2017-02-23 23:38:06 +01:00
Support DM_CACHE_FEATURE_METADATA2, new cache metadata format 2.
2017-02-23 23:35:40 +01:00
Improve code to handle mode mask for cache nodes.
2017-02-26 19:31:06 +01:00
Cache status check for passthrough also require trailing space.
2017-02-11 18:14:00 +01:00
Add extra memory page when limiting pthread stack size in dmeventd.
2017-02-10 19:57:04 +01:00
Avoids immediate resume when preloaded device is smaller.
2017-03-28 15:28:53 +01:00
Do not suppress kernel key description in dmsetup table output for dm-crypt.
2017-01-20 22:54:20 +01:00
Support configurable command executed from dmeventd thin plugin.
2017-01-09 16:30:49 +01:00
Support new R|r human readable units output format.
2016-12-22 23:28:04 +01:00
Thin dmeventd plugin reacts faster on lvextend failure path with umount.
2016-12-18 14:40:57 +00:00
Add dm_stats_bind_from_fd() to bind a stats handle from a file descriptor.
2016-12-17 22:40:59 +01:00
Do not try call callback when reverting activation on error path.
2017-03-28 15:28:53 +01:00
Fix file mapping for extents with physically adjacent extents in dmstats.
2016-12-09 22:54:08 +01:00
Validation vsnprintf result in runtime translate of dm_log (1.02.136).
2017-03-28 15:28:53 +01:00
Separate filemap extent allocation from region table in dmstats.
Fix segmentation fault when filemap region creation fails in dmstats.
Fix performance of region cleanup for failed filemap creation in dmstats.
Fix very slow region deletion with many regions in dmstats.
2016-11-30 23:21:11 +00:00
2016-11-30 23:14:34 +00:00
Version 1.02.137 - 30th November 2016
=====================================
2016-11-16 15:29:09 +01:00
Document raid status values.
2016-11-30 23:14:34 +00:00
Always exit dmsetup with success when asked to display help/version.
2016-11-05 01:14:06 +00:00
2016-11-05 01:03:32 +00:00
Version 1.02.136 - 5th November 2016
====================================
2016-10-31 18:03:06 +01:00
Log failure of raid device with log_error level.
2016-11-03 17:15:07 +01:00
Use dm_log_with_errno and translate runtime to dm_log only when needed.
2016-11-05 01:03:32 +00:00
Make log messages from dm and lvm library different from dmeventd.
2016-11-03 12:01:01 +01:00
Notice and Info messages are again logged from dmeventd and its plugins.
2016-11-02 14:40:12 +01:00
Dmeventd now also respects DM_ABORT_ON_INTERNAL_ERRORS as libdm based tool.
2016-11-03 12:07:27 +01:00
Report as non default dm logging also when logging with errno was changed.
2016-11-02 14:39:13 +01:00
Use log_level() macro to consistently decode message log level in dmeventd.
2016-10-18 18:01:52 +01:00
Still produce output when dmsetup dependency tree building finds dev missing.
2016-10-03 15:39:54 +02:00
Check and report pthread_sigmask() failure in dmeventd.
2016-10-03 16:29:55 +02:00
Check mem alloc fail in _canonicalize_field_ids().
2016-10-03 14:58:23 +02:00
Use unsigned math when checking more then 31 legs of raid.
2016-09-27 17:46:52 +01:00
Fix 'dmstats delete' with dmsetup older than v1.02.129
2016-09-27 14:35:22 +01:00
Fix stats walk segfault with dmsetup older than v1.02.129
2016-09-26 14:29:35 +01:00
2016-09-26 14:20:08 +01:00
Version 1.02.135 - 26th September 2016
======================================
2016-09-26 12:36:04 +02:00
Fix man entry for dmsetup status.
2016-09-21 14:25:24 +02:00
Introduce new dm_config_parse_without_dup_node_check().
2016-09-26 14:20:08 +01:00
Don't omit last entry in dmstats list --group.
2016-09-07 02:34:15 +01:00
2016-09-07 02:25:51 +01:00
Version 1.02.134 - 7th September 2016
=====================================
Improve explanation of udev fallback in libdevmapper.h.
2016-08-15 13:23:06 +01:00
2016-08-10 02:42:35 +01:00
Version 1.02.133 - 10th August 2016
===================================
Add dm_report_destroy_rows/dm_report_group_output_and_pop_all for lvm shell.
Adjust group handling and json production for lvm shell.
2016-07-28 19:58:22 +01:00
2016-07-28 18:35:32 +01:00
Version 1.02.132 - 28th July 2016
2016-07-15 22:02:58 +01:00
=================================
2016-07-26 12:27:41 +02:00
Fix json reporting to escape '"' character that may appear in reported string.
2016-07-15 22:02:58 +01:00
2016-07-15 21:55:38 +01:00
Version 1.02.131 - 15th July 2016
=================================
2016-07-12 09:52:18 +02:00
Disable queueing on mpath devs in blk-availability systemd service/initscript.
Add new -m|--mpathoption disablequeueing to blkdeactivate.
2016-07-07 14:37:49 +01:00
Automatically group regions with 'create --segments' unless --nogroup.
Fix resource leak when deleting the first member of a group.
2016-07-07 09:51:54 +01:00
Allow --bounds with 'create --filemap' for dmstats.
Enable creation of filemap regions with histograms.
Enable histogram aggregation for regions with more than one area.
Enable histogram aggregation for groups of regions.
Add a --filemap option to 'dmstats create' to allow mapping of files.
Add dm_stats_create_regions_from_fd() to map file extents to regions.
2016-07-06 17:04:25 +01:00
2016-07-06 16:55:44 +01:00
Version 1.02.130 - 6th July 2016
2016-07-06 01:14:33 +01:00
================================
2016-07-06 16:55:44 +01:00
Minor fixes from coverity.
2016-07-06 01:14:33 +01:00
2016-07-06 00:59:28 +01:00
Version 1.02.129 - 6th July 2016
================================
2016-06-22 18:36:10 +01:00
Update default dmstats field selections for groups.
Add 'obj_type', 'group_id', and 'statsname' fields to dmstats reports.
Add --area, --region, and --group to dmstats to control object selection.
Add --alias, --groupid, --regions to dmstats for group creation and deletion.
Add 'group' and 'ungroup' commands to dmstats.
2016-07-01 13:14:41 +01:00
Allow dm_stats_delete_group() to optionally delete all group members.
2016-06-19 13:30:46 +01:00
Add dm_stats_get_object_type() to return the type of object present.
Add dm_stats_walk_init() allowing control of objects visited by walks.
2016-02-29 17:52:29 +00:00
Add dm_stats_get_group_descriptor() to return the member list as a string.
2016-06-19 13:30:46 +01:00
Introduce dm_stats_get_nr_groups() and dm_stats_group_present().
2016-02-29 17:52:29 +00:00
Add dm_stats_{get,set}_alias() to set and retrieve alias names for groups.
Add dm_stats_get_group_id() to return the group ID for a given region.
Add dm_stats_{create,delete}_group() to allow grouping of stats regions.
2016-02-29 17:33:16 +00:00
Add enum-driven dm_stats_get_{metric,counter}() interfaces.
2016-02-18 16:14:43 +00:00
Add dm_bitset_parse_list() to parse a string representation of a bitset.
2016-06-29 15:56:29 +02:00
Thin dmeventd plugin umounts lvm2 volume only when pool is 95% or more.
2016-06-25 20:47:49 +01:00
2016-06-25 20:35:14 +01:00
Version 1.02.128 - 25th June 2016
2016-06-17 13:57:33 +01:00
=================================
2016-06-13 15:23:44 +02:00
Recognize 'all' keyword used in selection as synonym for "" (no selection).
2016-05-12 15:04:37 +02:00
Add dm_report_set_selection to set selection for multiple output of report.
2016-05-12 14:34:04 +02:00
Add DM_REPORT_OUTPUT_MULTIPLE_TIMES flag for multiple output of same report.
2016-05-12 14:07:05 +02:00
Move field width handling/sort init from dm_report_object to dm_report_output.
2016-05-19 12:19:48 +02:00
Add _LOG_BYPASS_REPORT flag for bypassing any log report currently set.
libdm: report: implement DM_REPORT_GROUP_JSON for JSON report output
This patch introduces DM_REPORT_GROUP_JSON report group type. When using
this group type and when pushing a report to such a group, these flags
are automatically unset:
DM_REPORT_OUTPUT_ALIGNED
DM_REPORT_OUTPUT_HEADINGS
DM_REPORT_OUTPUT_COLUMNS_AS_ROWS
...and this flag is set:
DM_REPORT_OUTPUT_BUFFERED
The whole group is encapsulated in { } for the outermost JSON object
and then each report is reported on output as array of objects where
each object is the row from report:
{
"report_name1": [
{field1="value", field2="value",...},
{field1="value", field2="value",...}
...
],
"report_name2": [
{field1="value", field2="value",...},
{field1="value", field2="value",...}
...
]
...
}
2016-05-02 14:21:40 +02:00
Introduce DM_REPORT_GROUP_JSON for report group with JSON output format.
2016-05-23 10:47:03 +02:00
Introduce DM_REPORT_GROUP_BASIC for report group with basic report output.
2016-06-16 11:23:56 +02:00
Introduce DM_REPORT_GROUP_SINGLE for report group having single report only.
2016-05-02 14:21:05 +02:00
Add dm_report_group_{create,push,pop,destroy} to support report grouping.
2016-06-17 13:57:33 +01:00
2016-06-11 00:08:08 +01:00
Version 1.02.127 - 11th June 2016
=================================
Fix blkdeactivate regression causing skipping of dm + md devices. (1.02.126)
2016-06-03 23:20:43 +01:00
2016-06-03 23:16:50 +01:00
Version 1.02.126 - 3rd June 2016
2016-05-14 02:12:23 +01:00
================================
2016-05-19 18:20:11 +02:00
Report passthrough caching mode when parsing cache mode.
2016-05-14 02:12:23 +01:00
2016-05-14 01:57:42 +01:00
Version 1.02.125 - 14th May 2016
================================
2016-05-12 01:14:25 +01:00
Show library version in message even if dm driver version is unavailable.
2016-05-07 00:48:40 +01:00
2016-04-30 01:07:26 +01:00
Version 1.02.124 - 30th April 2016
2016-04-23 00:43:13 +01:00
==================================
2016-04-28 00:54:27 +01:00
Add dm_udev_wait_immediate to libdevmapper for waiting outside the library.
2016-04-23 00:43:13 +01:00
2016-04-23 00:33:59 +01:00
Version 1.02.123 - 23rd April 2016
==================================
Do not strip LVM- when debug reporting not found uuid.
2016-04-09 02:08:44 +01:00
Version 1.02.122 - 9th April 2016
=================================
Change log_debug ioctl flags from single characters into words.
2016-04-01 20:36:40 +01:00
2016-03-26 09:04:50 +00:00
Version 1.02.121 - 26th March 2016
2016-03-19 01:18:28 +00:00
==================================
2016-03-26 09:04:50 +00:00
Adjust raid status function.
2016-03-19 01:18:28 +00:00
2016-03-11 00:19:16 +00:00
Version 1.02.120 - 11th March 2016
==================================
2016-03-09 18:00:57 +01:00
Improve parsing of cache status and report Fail, Error, needs_check, ro.
2016-03-04 18:06:24 +00:00
2016-03-04 17:59:21 +00:00
Version 1.02.119 - 4th March 2016
=================================
2016-03-04 15:49:00 +01:00
Fix dm_config_write_node and variants to return error on subsection failures.
2016-03-04 14:59:22 +01:00
Remove 4096 char limit due to buffer size if writing dm_config_node.
2016-02-26 21:14:12 +00:00
2016-02-26 21:03:30 +00:00
Version 1.02.118 - 26th February 2016
2016-02-21 23:37:48 +00:00
=====================================
2016-02-23 20:17:41 +01:00
Fix string boundary check in _get_canonical_field_name().
2016-02-22 11:14:30 +01:00
Always initialized hist struct in _stats_parse_histogram().
2016-02-21 23:37:48 +00:00
2016-02-21 23:17:24 +00:00
Version 1.02.117 - 21st February 2016
2016-02-15 10:48:55 +00:00
=====================================
2016-02-15 16:33:38 +01:00
Improve status parsing for thin-pool and thin devices.
2016-02-15 10:48:55 +00:00
2016-02-15 10:35:16 +00:00
Version 1.02.116 - 15th February 2016
=====================================
2016-02-11 12:00:28 +01:00
Use fully aligned allocations for dm_pool_strdup/strndup() (1.02.64).
2016-01-27 19:11:03 +08:00
Fix thin-pool table parameter feature order to match kernel output.
2016-01-25 01:12:27 +00:00
2016-01-25 01:08:16 +00:00
Version 1.02.115 - 25th January 2016
====================================
2016-01-21 11:36:26 +01:00
Fix man page for dmsetup udevcreatecookie.
2016-01-16 02:12:10 +00:00
2015-12-14 12:24:21 +00:00
Version 1.02.114 - 14th December 2015
=====================================
2015-12-08 16:40:08 +02:00
Better support for dmsetup static linkage.
2015-12-08 00:54:32 +00:00
Extend validity checks on dmeventd client socket.
2015-12-05 15:36:22 +00:00
2015-12-05 15:33:19 +00:00
Version 1.02.113 - 5th December 2015
====================================
2015-11-30 21:17:25 +01:00
Mirror plugin in dmeventd uses dm_get_status_mirror().
2015-11-30 21:16:43 +01:00
Add dm_get_status_mirror() for parsing mirror status line.
2015-11-28 01:29:00 +00:00
2015-11-28 01:25:53 +00:00
Version 1.02.112 - 28th November 2015
2015-11-23 03:40:34 +00:00
=====================================
2015-11-26 09:18:46 +01:00
Show error message when trying to create unsupported raid type.
2015-11-23 23:15:04 +01:00
Improve preloading sequence of an active thin-pool target.
2015-11-23 23:12:43 +01:00
Drop extra space from cache target line to fix unneded table reloads.
2015-11-23 03:40:34 +00:00
2015-11-23 03:33:43 +00:00
Version 1.02.111 - 23rd November 2015
=====================================
Extend dm_hash to support multiple values with the same key.
2015-11-16 00:00:32 +01:00
Add missing check for allocation inside dm_split_lvm_name().
2015-11-09 09:50:46 +01:00
Test dm_task_get_message_response for !NULL in dm_stats_print_region().
2015-11-09 09:45:53 +01:00
Add checks for failing dm_stats_create() in dmsetup.
2015-11-08 17:10:38 +01:00
Add missing fifo close when failed to initialize client connection.
2015-11-09 01:48:57 +00:00
2015-10-30 15:34:00 +00:00
Version 1.02.110 - 30th October 2015
====================================
2015-10-29 11:52:11 +01:00
Disable thin monitoring plugin when it fails too often (>10 times).
2015-10-27 11:12:59 +01:00
Fix/restore parsing of empty field '-' when processing dmeventd event.
2015-10-25 19:27:09 +01:00
Enhance dm_tree_node_size_changed() to recognize size reduction.
2015-10-22 20:36:46 +02:00
Support exit on idle for dmenventd (1 hour).
2015-10-22 15:48:14 +02:00
Add support to allow unmonitor device from plugin itself.
New design for thread co-operation in dmeventd.
2015-10-22 12:36:25 +02:00
Dmeventd read device status with 'noflush'.
2015-10-21 20:52:29 +02:00
Dmeventd closes control device when no device is monitored.
2015-10-20 14:19:35 +02:00
Thin plugin for dmeventd improved percentage usage.
2015-10-22 15:35:55 +02:00
Snapshot plugin for dmeventd improved percentage usage.
2015-10-21 20:36:15 +02:00
Add dm_hold_control_dev to allow holding of control device open.
2015-10-16 15:50:13 +02:00
Add dm_report_compact_given_fields to remove given empty fields from report.
2015-10-13 11:37:14 +02:00
Use libdm status parsing and local mem raid dmeventd plugin.
2015-10-13 11:35:44 +02:00
Use local mem pool and lock only lvm2 execution for mirror dmeventd plugin.
2015-10-13 11:35:03 +02:00
Lock protect only lvm2 execution for snapshot and thin dmeventd plugin.
2015-10-13 11:28:57 +02:00
Use local mempool for raid and mirror plugins.
2015-10-13 09:43:09 +02:00
Reworked thread initialization for dmeventd plugins.
2015-10-09 21:41:50 +02:00
Dmeventd handles snapshot overflow for now equally as invalid.
2015-10-09 21:57:48 +02:00
Convert dmeventd to use common logging macro system from libdm.
2015-10-13 09:49:59 +02:00
Return -ENOMEM when device registration fails instead of 0 (=success).
2015-10-13 14:06:15 +02:00
Enforce writethrough mode for cleaner policy.
2015-10-06 13:25:37 +02:00
Add support for recognition and deactivation of MD devices to blkdeactivate.
2015-09-28 20:28:31 +01:00
Move target status functions out of libdm-deptree.
2015-09-23 15:53:27 +01:00
Correct use of max_write_behind parameter when generating raid target line.
2015-09-23 13:17:12 +02:00
Fix dm-event systemd service to make sure it is executed before mounting.
2015-09-22 16:06:07 +01:00
2016-06-03 15:33:27 +02:00
Version 1.02.109 - 22nd September 2015
2015-09-15 14:09:10 +01:00
======================================
2015-09-18 14:34:34 +02:00
Update man pages for dmsetup and dmstats.
2015-09-18 14:37:50 +02:00
Improve help text for dmsetup.
2015-09-18 14:35:52 +02:00
Use --noflush and --nolockfs when removing device with --force.
2015-09-18 14:41:00 +02:00
Parse new Overflow status string for snapshot target.
2015-09-17 14:36:39 +02:00
Check dir path components are valid if using dm_create_dir, error out if not.
2015-09-17 13:31:34 +02:00
Fix /dev/mapper handling to remove dangling entries if symlinks are found.
2015-09-17 10:19:15 +02:00
Make it possible to use blank value as selection for string list report field.
2015-09-15 14:09:10 +01:00
2015-09-15 13:17:50 +01:00
Version 1.02.108 - 15th September 2015
======================================
2015-09-14 14:59:40 +02:00
Do not check for full thin pool when activating without messages (1.02.107).
2015-09-05 23:58:40 +01:00
2015-09-05 23:46:22 +01:00
Version 1.02.107 - 5th September 2015
=====================================
2015-09-02 11:10:59 +02:00
Parse thin-pool status with one single routine internally.
2015-09-04 19:53:10 +01:00
Add --histogram to select default histogram fields for list and report.
Add report fields for displaying latency histogram configuration and data.
Add dmstats --bounds to specify histogram boundaries for a new region.
Add dm_histogram_to_string() to format histogram data in string form.
Add public methods to libdm to access numerical histogram config and data.
Parse and store histogram data in dm_stats_list() and dm_stats_populate().
Add an argument to specify histogram bounds to dm_stats_create_region().
Add dm_histogram_bounds_from_{string,uint64_t}() to parse histogram bounds.
Add dm_histogram handle type to represent a latency histogram and its bounds.
2015-09-03 09:28:42 +02:00
Fix devmapper.pc pkgconfig file to not reference non-existent rt.pc file.
2015-09-01 16:26:02 +01:00
Reinstate dm_task_get_info@Base to libdevmapper exports. (1.02.106)
2015-08-26 23:13:34 +01:00
2015-08-26 23:11:13 +01:00
Version 1.02.106 - 26th August 2015
2015-08-17 17:26:20 +01:00
===================================
2015-08-17 18:09:43 +01:00
Add 'precise' column to statistics reports.
2015-08-18 12:39:34 +01:00
Add --precise switch to 'dmstats create' to request nanosecond counters.
2015-08-20 11:55:06 +01:00
Add precise argument to dm_stats_create_region().
Add support to libdm-stats for precise_timestamps
2015-08-17 17:26:20 +01:00
2015-08-17 17:20:14 +01:00
Version 1.02.105 - 17th August 2015
2015-08-10 01:02:31 +01:00
===================================
2015-08-16 01:16:16 +01:00
Fix 'dmstats list -o all' segfault.
Separate dmstats statistics fields from region information fields.
Add interval and interval_ns fields to dmstats reports.
2015-08-14 13:20:20 +01:00
Do not include internal glibc headers in libdm-timestamp.c (1.02.104)
2015-08-13 22:30:39 +01:00
Exit immediately if no device is supplied to dmsetup wipe_table.
Suppress dmsetup report headings when no data is output. (1.02.104)
Adjust dmsetup usage/help output selection to match command invoked.
Fix dmsetup -o all to select correct fields in splitname report.
Restructure internal dmsetup argument handling across all commands.
Add dm_report_is_empty() to indicate there is no data awaiting output.
2015-08-11 13:31:26 +02:00
Add more arg validation for dm_tree_node_add_cache_target().
2015-08-13 14:42:55 +01:00
Add --alldevices switch to replace use of --force for stats create / delete.
2015-08-10 01:02:31 +01:00
2015-08-10 00:40:42 +01:00
Version 1.02.104 - 10th August 2015
===================================
2015-08-05 10:40:00 +01:00
Add dmstats.8 man page
2015-08-10 00:40:42 +01:00
Add dmstats --segments switch to create one region per device segment.
Add dmstats --regionid, --allregions to specify a single / all stats regions.
Add dmstats --allprograms for stats commands that filter by program ID.
Add dmstats --auxdata and --programid args to specify aux data and program ID.
2015-08-05 10:40:00 +01:00
Add report stats sub-command to provide repeating stats reports.
Add clear, delete, list, and print stats sub-commands.
Add create stats sub-command and --start, --length, --areas and --areasize.
Recognize 'dmstats' as an alias for 'dmsetup stats' when run with this name.
Add a 'stats' command to dmsetup to configure, manage and report stats data.
2015-08-10 00:40:42 +01:00
Add statistics fields to dmsetup -o.
2015-08-05 10:40:00 +01:00
Add libdm-stats library to allow management of device-mapper statistics.
2015-08-10 00:40:42 +01:00
Add --nosuffix to suppress dmsetup unit suffixes in report output.
Add --units to control dmsetup report field output units.
2015-08-08 17:37:07 +01:00
Add support to redisplay column headings for repeating column reports.
Fix report header and row resource leaks.
2015-08-05 08:28:35 +01:00
Report timestamps of ioctls with dmsetup -vvv.
2015-08-03 16:29:50 +02:00
Recognize report field name variants without any underscores too.
2015-07-31 21:59:34 +01:00
Add dmsetup --interval and --count to repeat reports at specified intervals.
2015-07-29 19:21:07 +01:00
Add dm_timestamp functions to libdevmapper.
2015-08-10 00:40:42 +01:00
Recognise vg/lv name format in dmsetup.
Move size display code to libdevmapper as dm_size_to_string.
2015-07-24 23:21:51 +01:00
2015-07-24 23:20:42 +01:00
Version 1.02.103 - 24th July 2015
=================================
2015-07-22 23:03:32 +01:00
Introduce libdevmapper wrappers for all malloc-related functions.
2015-07-07 13:57:13 +01:00
2015-07-07 13:54:37 +01:00
Version 1.02.102 - 7th July 2015
2015-07-03 16:58:24 +01:00
================================
2015-07-06 17:30:18 +01:00
Include tool.h for default non-library use.
2015-07-06 15:09:17 +01:00
Introduce format macros with embedded % such as FMTu64.
2015-07-03 16:58:24 +01:00
2015-07-03 16:34:40 +01:00
Version 1.02.101 - 3rd July 2015
================================
2015-07-01 13:30:14 +02:00
Add experimental support to passing messages in suspend tree.
2015-05-19 13:01:48 +02:00
Add dm_report_value_cache_{set,get} to support caching during report/select.
Add dm_report_reserved_handler to handle report reserved value actions.
Support dynamic value in select: DM_REPORT_FIELD_RESERVED_VALUE_DYNAMIC_VALUE.
Support fuzzy names in select: DM_REPORT_FIELD_RESERVED_VALUE_FUZZY_NAMES.
2015-07-01 13:29:32 +02:00
Thin pool trace messages show a device name and major:minor.
2015-06-30 17:12:56 +01:00
2015-06-30 17:11:21 +01:00
Version 1.02.100 - 30th June 2015
=================================
2015-05-21 15:19:03 +02:00
Add since, after, until and before time operators to be used in selection.
Add support for time in reports and selection: DM_REPORT_FIELD_TYPE_TIME.
2015-06-30 10:13:35 +02:00
Support report reserved value ranges: DM_REPORT_FIELD_RESERVED_VALUE_RANGE.
Support report reserved value names: DM_REPORT_FIELD_RESERVED_VALUE_NAMED.
2015-06-24 11:33:34 +02:00
Add DM_CONFIG_VALUE_FMT_{INT_OCTAL,STRING_NO_QUOTES} config value format flag.
Add DM_CONFIG_VALUE_FMT_COMMON_{ARRAY,EXTRA_SPACE} config value format flag.
Add dm_config_value_{get,set}_format_flags to get and set config value format.
2015-06-20 01:05:21 +01:00
2015-06-20 00:57:35 +01:00
Version 1.02.99 - 20th June 2015
2015-06-12 21:42:57 +01:00
================================
2015-06-18 15:15:39 +02:00
New dm_tree_node_set_thin_pool_read_only(DM_1_02_99) for read-only thin pool.
2015-06-04 08:45:22 +02:00
Enhance error message when thin-pool message fails.
2015-06-20 00:57:35 +01:00
Fix dmeventd logging to avoid threaded use of static variable.
Remove redundant dmeventd SIGALRM coded.
2015-06-12 21:42:57 +01:00
2015-06-12 21:40:56 +01:00
Version 1.02.98 - 12th June 2015
================================
2015-05-26 15:13:49 +01:00
Add dm_task_get_errno() to return any unexpected errno from a dm ioctl call.
Use copy of errno made after each dm ioctl call in case errno changes later.
2015-05-15 23:28:47 +01:00
2015-05-15 23:19:29 +01:00
Version 1.02.97 - 15th May 2015
===============================
2015-05-15 15:29:46 +02:00
New dm_task_get_info(DM_1_02_97) supports internal_suspend state.
New symbols are versioned and comes with versioned symbol name (DM_1_02_97).
2015-05-02 01:52:05 +01:00
2015-05-02 01:41:17 +01:00
Version 1.02.96 - 2nd May 2015
==============================
select: fix matching reserved values while <,<=,>,>= is used in selection criteria
Scenario:
$ vgs -o+vg_mda_copies
VG #PV #LV #SN Attr VSize VFree #VMdaCps
fedora 1 2 0 wz--n- 9.51g 0 unmanaged
vg 16 9 0 wz--n- 1.94g 1.83g 2
$ lvs -o+read_ahead vg/lvol6 vg/lvol7
LV VG Attr LSize Pool Origin Data% Rahead
lvol6 vg Vwi-a-tz-- 1.00g pool lvol5 0.00 auto
lvol7 vg Vwi---tz-k 1.00g pool lvol6 256.00k
Before this patch:
$vgs -o vg_name,vg_mda_copies -S 'vg_mda_copies < unmanaged'
VG #VMdaCps
vg 2
Problem:
Reserved values can be only used with exact match = or !=, not <,<=,>,>=.
In the example above, the "unamanaged" is internally represented as
18446744073709551615, but this should be ignored while not comparing
field directly with "unmanaged" reserved name with = or !=. Users
should not be aware of this internal mapping of the reserved value
name to its internal value and hence it doesn't make sense for such
reserved value to take place in results of <,<=,> and >=.
There's no order defined for reserved values!!! It's a special
*reserved* value that is taken out of the usual value range
of that type.
This is very similar to what we have already fixed with
2f7f6932dcd450ba75fe590aba8c09838d2618dc, but it's the other way round
now - we're using reserved value name in selection criteria now
(in the patch 2f7f693, we had concrete value and we compared it
with the reserved value). So this patch completes patch 2f7f693.
This patch also fixes this problem:
$ lvs -o+read_ahead vg/lvol6 vg/lvol7 -S 'read_ahead > 32k'
LV VG Attr LSize Pool Origin Data% Rahead
lvol6 vg Vwi-a-tz-- 1.00g pool lvol5 0.00 auto
lvol7 vg Vwi---tz-k 1.00g pool lvol6 256.00k
Problem:
In the example above, the internal reserved value "auto" is in the
range of selection "> 32k" - it shouldn't match as well. Here the
"auto" is internally represented as MAX_DBL and of course, numerically,
MAX_DBL > 256k. But for users, the reserved value should be uncomparable
to any number so the mapping of the reserved value name to its interna
value is transparent to users. Again, there's no order defined for
reserved values and hence it should never match if using <,<=,>,>=
operators.
This is actually exactly the same problem as already described in
2f7f6932dcd450ba75fe590aba8c09838d2618dc, but that patch failed for
size field types because of incorrect internal representation used.
With this patch applied, both problematic scenarios mentioned
above are fixed now:
$ vgs -o vg_name,vg_mda_copies -S 'vg_mda_copies < unmanaged'
(blank)
$ lvs -o+read_ahead vg/lvol6 vg/lvol7 -S 'read_ahead > 32k'
LV VG Attr LSize Pool Origin Rahead
lvol7 vg Vwi---tz-k 1.00g pool lvol6 256.00k
2015-04-24 09:47:25 +02:00
Fix selection to not match if using reserved value in criteria with >,<,>=,<.
Fix selection to not match reserved values for size fields if using >,<,>=,<.
2015-04-23 19:26:52 +01:00
Include uuid or device number in log message after ioctl failure.
2015-04-23 18:39:04 +01:00
Add DM_INTERNAL_SUSPEND_FLAG to dm-ioctl.h.
2015-04-14 15:28:42 +02:00
Install blkdeactivate script and its man page with make install_device-mapper.
2015-03-24 02:02:07 +00:00
2015-03-24 01:59:35 +00:00
Version 1.02.95 - 15th March 2015
=================================
Makefile regenerated.
2015-03-04 14:00:46 +00:00
2015-03-04 13:49:51 +00:00
Version 1.02.94 - 4th March 2015
================================
libdm: report: add dm_report_object_is_selected
The new dm_report_object_is_selected fn makes it possible to opt whether the
object reported should be displayed on output or not. Also, in addition to
that, it makes it possible to save the result of selection (either 0 or 1).
So dm_report_object_is_selected is simply more general form of object
reporting fn - combinations now allow for:
dm_report_object_is_selected(rh, object, 1, NULL):
This is exactly the original dm_report_object fn and it's fully equal
to it.
dm_report_object_is_selected(rh, object, 0, selected):
Do not display the result on output, but save info whether the object
is selected or not in 'selected' variable.
dm_report_object_is_selected(rh, object, 1, selected):
Display the result on output (if it passes selection criteria) and save
whether the object is selected or not in 'selected' variable.
dm_report_object(rh, object, 0, NULL):
This combination is not allowed - it will end up with internal error.
We're either interested in selection status or we want to display the
result on output or both, but never nothing of the two.
2014-11-24 11:07:39 +01:00
Add dm_report_object_is_selected for generalized interface for report/select.
2015-01-30 16:18:43 +00:00
2015-01-21 13:08:12 +00:00
Version 1.02.93 - 21st January 2015
===================================
2015-01-21 12:54:00 +00:00
Reduce severity of ioctl error message when dmeventd waitevent is interrupted.
2015-01-21 12:23:56 +00:00
Report 'unknown version' when incompatible version numbers were not obtained.
2015-01-13 15:23:03 +01:00
Report more info from thin pool status (out of data, metadata-ro, fail).
Support error_if_no_space for thin pool target.
2014-12-09 10:52:07 +01:00
Fix segfault while using selection with regex and unbuffered reporting.
2014-12-05 11:42:43 +01:00
Add dm_report_compact_fields to remove empty fields from report output.
2014-12-05 11:38:51 +01:00
Remove unimplemented dm_report_set_output_selection from libdevmapper.h.
2014-11-28 23:07:31 +00:00
2014-11-24 17:46:50 +00:00
Version 1.02.92 - 24th November 2014
2014-11-11 14:15:32 +00:00
====================================
2014-11-22 18:13:21 +01:00
Fix memory corruption with sorting empty string lists (1.02.86).
2014-11-09 02:18:31 +01:00
Fix man dmsetup.8 syntax warning of Groff
2014-11-24 17:46:50 +00:00
Accept unquoted strings and / in place of {} when parsing configs.
2014-11-11 14:15:32 +00:00
2014-11-11 14:13:00 +00:00
Version 1.02.91 - 11th November 2014
2014-09-01 01:53:44 +01:00
====================================
2014-11-11 14:13:00 +00:00
Update cache creation and dm_config_node to pass policy.
Allow activation of any thin-pool if transaction_id supplied is 0.
2014-10-31 13:04:46 +01:00
Don't print uninitialized stack bytes when non-root uses dm_check_version().
report: selection: fix selection criteria to not match reserved values when using >, <, >=, <
Some values are reserved for special purpose like 'undefined', 'unmanaged' etc.
When using >, <, >= and < comparison operators where the range is considered,
do not include reserved values as proper values in this range which
would otherwise result in not so obvious criteria match (as the reserved value is
actually transparent for the user). It's incorrect.
Example scenario:
$ vgs -o vg_name,vg_mda_copies vg1 vg2
VG #VMdaCps
vg1 1
vg2 unmanaged
The "unmanaged" is actually mapped onto reserved value
18446744073709551615 (2^64 - 1) internally.
Such reseved value is already caught on selection criteria input
properly:
$ vgs -o name,vg_mda_copies vg1 vg2 -S 'vg_mda_copies=18446744073709551615'
Numeric value 18446744073709551615 found in selection is reserved.
However, we still need to fix situaton where the reserved value may be
included in resulting range:
Before this patch:
$ vgs -o vg_name,vg_mda_copies vg1 vg2 -S 'vg_mda_copies >= 1'
VG #VMdaCps
vg1 1
vg2 unmanaged
With this patch applied:
$ vgs -o vg_name,vg_mda_copies vg1 vg2 -S 'vg_mda_copies >= 1'
VG #VMdaCps
vg1 1
From the examples above, we can see that without this patch applied,
the vg_mda_copies >= 1 also matched the reserved value 18446744073709551615
(which is represented by the "unamanged" string on report). When
applying the operators, such values must be skipped! They're meant to
be matched only against their string representation only, e.g.:
$ vgs -o name,vg_mda_copies vg1 vg2 -S 'vg_mda_copies=unmanaged'
VG #VMdaCps
vg2 unmanaged
...or any synonyms:
$ vgs -o name,vg_mda_copies vg1 vg2 -S 'vg_mda_copies=undefined'
VG #VMdaCps
vg2 unmanaged
2014-10-27 11:25:08 +01:00
Fix selection criteria to not match reserved values when using >, <, >=, <.
2014-11-11 14:13:00 +00:00
Add DM_LIST_HEAD_INIT macro to libdevmapper.h.
2014-09-12 15:17:57 +02:00
Fix dm_is_dm_major to not issue error about missing /proc lines for dm module.
2014-09-01 01:53:44 +01:00
2014-09-01 01:51:47 +01:00
Version 1.02.90 - 1st September 2014
====================================
2014-08-29 12:57:30 +02:00
Restore proper buffer size for parsing mountinfo line (1.02.89)
2014-08-26 16:41:18 +01:00
2014-08-26 16:34:14 +01:00
Version 1.02.89 - 26th August 2014
==================================
Improve libdevmapper-event select() error handling.
2014-08-21 15:39:27 +02:00
Add extra check for matching transation_id after message submitting.
2014-08-25 10:04:08 +02:00
Add dm_report_field_string_list_unsorted for str. list report without sorting.
2014-08-16 00:34:48 +01:00
Support --deferred with dmsetup remove to defer removal of open devices.
2014-08-15 13:45:55 +01:00
Update dm-ioctl.h to include DM_DEFERRED_REMOVE flag.
select: add support for selection to match string list subset, recognize { } operator
Using "[ ]" operator together with "&&" (or ",") inside causes the
string list to be matched if and only if all the items given match
the value reported and the number of items also match. This is
strict list matching and the original behaviour we already have.
In contrast to that, the new "{ }" operator together with "&&" inside
causes the string list to be matched if and only if all the items given
match the value reported but the number of items don't need to match.
So we can provide a subset in selection criteria and if the subset
is found, it matches.
For example:
$ lvs -o name,tags
LV LV Tags
lvol0 a
lvol1 a,b
lvol2 b,c,x
lvol3 a,b,y
$ lvs -o name,tags -S 'tags=[a,b]'
LV LV Tags
lvol1 a,b
$ lvs -o name,tags -S 'tags={a,b}'
LV LV Tags
lvol1 a,b
lvol3 a,b,y
So in the example above the a,b is subset of a,b,y and therefore
it also matches.
Clearly, when using "||" (or "#") inside, the { } and [ ] is the
same:
$ lvs -o name,tags -S 'tags=[a#b]'
LV LV Tags
lvol0 a
lvol1 a,b
lvol2 b,c,x
lvol3 a,b,y
$ lvs -o name,tags -S 'tags={a#b}'
LV LV Tags
lvol0 a
lvol1 a,b
lvol2 b,c,x
lvol3 a,b,y
Also in addition to the above feature, fix list with single value
matching when using [ ]:
Before this patch:
$ lvs -o name,tags -S 'tags=[a]'
LV LV Tags
lvol0 a
lvol1 a,b
lvol3 a,b,y
With this patch applied:
$ lvs -o name,tags -S 'tags=[a]'
LV LV Tags
lvol0 a
In case neither [] or {} is used, assume {} (the behaviour is not
changed here):
$ lvs -o name,tags -S 'tags=a'
LV LV Tags
lvol0 a
lvol1 a,b
lvol3 a,b,y
So in new terms 'tags=a' is equal to 'tags={a}'.
2014-08-13 15:39:03 +02:00
Add support for selection to match string list subset, recognize { } operator.
Fix string list selection with '[value]' to not match list that's superset.
2014-08-13 15:27:00 +02:00
Fix string list selection to match whole words only, not prefixes.
2014-08-05 02:12:20 +01:00
2014-08-05 02:07:35 +01:00
Version 1.02.88 - 5th August 2014
=================================
2014-07-30 21:55:11 +01:00
Add dm_tree_set_optional_uuid_suffixes to handle upgrades.
2014-07-23 16:23:52 +01:00
2014-07-23 16:05:22 +01:00
Version 1.02.87 - 23rd July 2014
2014-06-23 15:23:09 +01:00
================================
2014-07-10 16:09:58 +02:00
Fix dm_report_field_string_list to handle delimiter with multiple chars.
2014-07-07 16:52:43 +02:00
Add dm_report_field_reserved_value for per-field reserved value definition.
2014-06-23 15:23:09 +01:00
2014-06-23 14:16:39 +01:00
Version 1.02.86 - 23rd June 2014
2014-06-23 14:03:32 +01:00
================================
2014-06-19 15:33:16 +02:00
Make "help" and "?" reporting fields implicit.
2014-06-18 10:48:53 +02:00
Recognize implicit "selected" field if using dm_report_init_with_selection.
Add support for implicit reporting fields which are predefined in libdm.
Add DM_REPORT_FIELD_TYPE_PERCENT: separate number and percent fields.
Add dm_percent_range_t,dm_percent_to_float,dm_make_percent to libdm for reuse.
Add dm_report_reserved_value to libdevmapper for reserved value definition.
Also display field types when listing all fields in selection help.
Recognize "help" keyword in selection string to show brief help for selection.
2014-06-18 12:30:34 +02:00
Always order items reported as string list field lexicographically.
2014-06-18 10:48:53 +02:00
Add dm_report_field_string_list to libdevmapper for direct string list report.
Add DM_REPORT_FIELD_TYPE_STRING_LIST: separate string and string list fields.
Add dm_str_list to libdevmapper for string list type definition and its reuse.
Add dmsetup -S/--select to define selection criteria for dmsetup reports.
Add dm_report_init_with_selection to intialize report with selection criteria.
Add DM_REPORT_FIELD_TYPE_SIZE: separate number and size reporting fields.
2014-06-13 15:45:25 +02:00