1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-12-26 03:22:12 +03:00
lvm2/libdm
Mike Snitzer 82d3ee5454 Add support for "snapshot-merge" target.
Introduces new libdevmapper function dm_tree_node_add_snapshot_merge_target

Verifies that the kernel (dm-snapshot) provides the 'snapshot-merge'
target.

Activate origin LV as snapshot-merge target.  Using snapshot-origin
target would be pointless because the origin contains volatile data
while a merge is in progress.

Because snapshot-merge target is activated in place of the
snapshot-origin target it must be resumed after all other snapshots
(just like snapshot-origin does) --- otherwise small window for data
corruption would exist.

Ideally the merging snapshot would not be activated at all but if it is
to be activated (because snapshot was already active) it _must_ be done
after the snapshot-merge.  This insures that DM's snapshot-merge target
will perform exception handover in the proper order (new->resume before
old->resume).  DM's snapshot-merge does support handover if the reverse
sequence is used (old->resume before new->resume) but DM will fail to
resume the old snapshot; leaving it suspended.

To insure the proper activation sequence dm_tree_activate_children() was
updated to accommodate an additional 'activation_priority' level.  All
regular snapshots are 0, snapshot-merge is 1, and merging snapshot is 2.
2010-01-13 01:39:44 +00:00
..
datastruct Remove unnecessary / duplicate dm_list macros and functions. 2009-11-25 20:44:07 +00:00
ioctl Support udev flags even when udev_sync is disabled or not compiled in. 2009-11-13 12:43:21 +00:00
misc Add support for querying a device's inactive table. 2009-11-06 00:43:08 +00:00
mm Add log_errno to set a specific errno and replace log_error in due course. 2009-07-16 00:52:06 +00:00
regex more tweaking to get things to compile - dmlib.h for log fns, list.h 2008-11-03 18:59:59 +00:00
.exported_symbols Add support for "snapshot-merge" target. 2010-01-13 01:39:44 +00:00
libdevmapper.h Add support for "snapshot-merge" target. 2010-01-13 01:39:44 +00:00
libdevmapper.pc.in Only include selinux libs in libdevmapper.pc when selinux build enabled. 2009-10-05 12:11:30 +00:00
libdm-common.c Add support to disable udev checking: DM_UDEV_DISABLE_CHECKING=1 env. variable. 2010-01-11 15:36:24 +00:00
libdm-common.h Several changes to udev support code: 2009-10-26 14:29:33 +00:00
libdm-deptree.c Add support for "snapshot-merge" target. 2010-01-13 01:39:44 +00:00
libdm-file.c more tweaking to get things to compile - dmlib.h for log fns, list.h 2008-11-03 18:59:59 +00:00
libdm-report.c Add missing items to WHATS_NEW files. 2010-01-11 21:28:04 +00:00
libdm-string.c Make mempool optional in dm_split_lvm_name() 2009-06-03 11:40:23 +00:00
Makefile.in Allow for a build directory separate from the source. 2009-10-02 19:10:31 +00:00