1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-12-21 13:34:40 +03:00
LVM2 mirror repository https://sourceware.org/lvm2/
Go to file
Jonathan Brassow ca51435153 Misc/RAID: Enable resume_lv to handle some renaming conflicts.
When images and their associated metadata are removed from a RAID1 LV,
the remaining sub-LVs are "shifted" down to fill the gaps.  For
example, if there is a 3-way mirror:
	[0][1][2]
and we remove device#0, the devices will be shifted down
	[1][2]
and renamed.
	[0][1]

This can create a problem for resume_lv (specifically,
dm_tree_activate_children) during the renaming process though.  This
is because it will attempt to rename the higher indexed sub-LVs first
and find that it cannot because there are currently other sub-LVs with
that name.  The solution is to check for a conflicting name before
attempting to rename.  If a conflict is found and that conflicting
sub-LV is also in the process of renaming, we can defer the current
rename until the conflicting sub-LV has renamed and cleared the
conflict.

Now that resume_lv can handle these types of rename conflicts, we can
remove the workaround in RAID that was attempting to resume a RAID1
LV from the bottom-up in order to force a proper rename in assending
order before attempting a resume on the top-level LV.  This "hack"
only worked for single machine use-cases of LVM.  Clearing this up
paves the way for exclusive activation of RAID LVs in a cluster.
2013-09-09 15:07:28 -05:00
autoconf Using Fedora 14's autoreconf. 2011-01-07 14:38:34 +00:00
conf conf: more comments about use_lvmetad + autoactivation relation 2013-08-22 08:29:20 +02:00
daemons cmirrord: Prevent secondary checkpoints from corrupting bitmaps 2013-08-20 13:21:09 -05:00
doc conf: add separate 'conf' dir for config files 2013-07-02 15:22:11 +02:00
include filters: check for mpath before opening devs 2013-08-13 23:26:58 +01:00
lib Misc/RAID: Enable resume_lv to handle some renaming conflicts. 2013-09-09 15:07:28 -05:00
libdaemon cleanup: easier to read loop code 2013-06-18 22:13:41 +02:00
libdm Misc/RAID: Enable resume_lv to handle some renaming conflicts. 2013-09-09 15:07:28 -05:00
liblvm lvm2app: lvm_list_pvs_free seg. fault when no PVs 2013-08-14 15:17:39 -05:00
man tools: add -b/--background for pvscan --cache -aay 2013-09-03 16:49:21 +02:00
old-tests Add .gitignore files for an in-source-tree build. 2012-06-08 16:26:21 +01:00
po INSTALL rules updates 2010-04-09 21:42:48 +00:00
python python-lvm: Correct parsing arguments for integers 2013-07-26 10:24:01 -05:00
report-generators add copyright notices to new files 2010-07-28 12:20:38 +00:00
reports [REPORT-GENERATORS] cut down stylsheet.css to what we actually use 2010-07-21 10:00:38 +00:00
scripts systemd: lvm2-activation-generator: remove default dir if args not specified and require all args to be given 2013-08-28 16:06:51 +02:00
test test: timeout when no write happens since last written line 2013-09-09 12:17:11 +02:00
tools cleanup: drop within comment gcc warning 2013-09-09 12:17:11 +02:00
udev udev: also inform lvmetad about lost LVM1 PV label 2013-09-09 13:48:27 +02:00
unit-tests cleanup: replace memset with struct initilization 2012-06-22 13:23:03 +02:00
.gitignore gitignore: Ignore files ending in ~ 2012-06-11 16:13:02 +01:00
aclocal.m4 Add aclocal.m4 (for pkgconfig). 2011-01-07 16:27:05 +00:00
configure configure: autoreconf 2013-07-31 15:59:05 +02:00
configure.in thin: add thin_repair and thin_dump options 2013-07-31 15:30:47 +02:00
COPYING Outline docs 2001-12-31 16:12:40 +00:00
COPYING.LIB Fix inconsistent licence notices: executables are GPLv2; libraries LGPLv2.1. 2007-08-20 20:55:30 +00:00
INSTALL quick review of docs 2008-11-04 17:49:22 +00:00
make.tmpl.in cleanup: comments and a message 2013-07-24 22:10:37 +01:00
Makefile.in test: Add a new "check_full" target, which also tests with real /dev. 2013-08-28 14:53:23 +02:00
README Rename git report from LVM2.git to lvm2.git. 2012-06-08 17:41:43 +01:00
VERSION post-release 2013-08-13 11:54:48 +01:00
VERSION_DM post-release 2013-08-13 11:54:48 +01:00
WHATS_NEW deactivate: drop readahead calc in deactivation 2013-09-07 09:13:20 +02:00
WHATS_NEW_DM libdm: new name can't be empty 2013-08-31 21:40:28 +02:00

This tree contains the LVM2 and device-mapper tools and libraries.

For more information about LVM2 read the changelog in the WHATS_NEW file.
Installation instructions are in INSTALL.

There is no warranty - see COPYING and COPYING.LIB.

Tarballs are available from:
  ftp://sources.redhat.com/pub/lvm2/

The source code is stored in git:
  http://git.fedorahosted.org/git/lvm2.git
  git clone git://git.fedorahosted.org/git/lvm2.git

Mailing list for general discussion related to LVM2:
  linux-lvm@redhat.com
  Subscribe from https://www.redhat.com/mailman/listinfo/linux-lvm

Mailing lists for LVM2 development, patches and commits:
  lvm-devel@redhat.com
  Subscribe from https://www.redhat.com/mailman/listinfo/linux-lvm

  lvm2-commits@lists.fedorahosted.org (Read-only archive of commits)
  Subscribe from https://fedorahosted.org/mailman/listinfo/lvm2-commits

Mailing list for device-mapper development, including kernel patches
and multipath-tools:
  dm-devel@redhat.com
  Subscribe from https://www.redhat.com/mailman/listinfo/dm-devel

The source code repository used until 7th June 2012 is accessible here:
  http://sources.redhat.com/cgi-bin/cvsweb.cgi/LVM2/?cvsroot=lvm2.