1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-12-22 17:35:59 +03:00
LVM2 mirror repository https://sourceware.org/lvm2/
Go to file
Jonathan Brassow 96626f64fa cache: Code to allow the create/remove of cache LVs
This patch allows users to create cache LVs with 'lvcreate'.  An origin
or a cache pool LV must be created first.  Then, while supplying the
origin or cache pool to the lvcreate command, the cache can be created.

Ex1:
Here the cache pool is created first, followed by the origin which will
be cached.
~> lvcreate --type cache_pool -L 500M -n cachepool vg /dev/small_n_fast
~> lvcreate --type cache -L 1G -n lv vg/cachepool /dev/large_n_slow

Ex2:
Here the origin is created first, followed by the cache pool - allowing
a cache LV to be created covering the origin.
~> lvcreate -L 1G -n lv vg /dev/large_n_slow
~> lvcreate --type cache -L 500M -n cachepool vg/lv /dev/small_n_fast

The code determines which type of LV was supplied (cache pool or origin)
by checking its type.  It ensures the right argument was given by ensuring
that the origin is larger than the cache pool.

If the user wants to remove just the cache for an LV.  They specify
the LV's associated cache pool when removing:
~> lvremove vg/cachepool

If the user wishes to remove the origin, but leave the cachepool to be
used for another LV, they specify the cache LV.
~> lvremove vg/lv

In order to remove it all, specify both LVs.

This patch also includes tests to create and remove cache pools and
cache LVs.
2014-02-04 16:50:16 -06:00
autoconf autoconf: Update config.guess/sub to 2014-01-01. 2014-01-21 22:00:15 +00:00
conf pool: Make another thin pool fn generic for cache usage also 2014-02-04 07:03:52 -06:00
daemons lvmetad: Fix getting vgid_old & avoid removing in-transition VGs. 2014-01-08 15:22:24 +01:00
doc conf: add separate 'conf' dir for config files 2013-07-02 15:22:11 +02:00
include reporting: Add devtypes command. 2013-09-18 01:09:15 +01:00
lib cache: Code to allow the create/remove of cache LVs 2014-02-04 16:50:16 -06:00
libdaemon lvmetad: extend socket/pid file handling 2013-11-29 20:56:29 +00:00
libdm pool: Make another thin pool fn generic for cache usage also 2014-02-04 07:03:52 -06:00
liblvm Misc: Change name of lvcreate_params field - s/create_thin_pool/create_pool/ 2014-01-22 10:30:55 -06:00
man tools: Add internal tags command. 2014-01-30 13:09:15 +00: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 compilation: Rename tags variables to tagsl. 2014-01-30 21:09:28 +00: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 fsadm: use xfs_repair when available 2014-01-20 11:57:39 +01:00
test cache: Code to allow the create/remove of cache LVs 2014-02-04 16:50:16 -06:00
tools cache: Code to allow the create/remove of cache LVs 2014-02-04 16:50:16 -06:00
udev udev: drop cryptsetup specific rules from 10-dm.rules 2014-01-22 15:18:57 +01: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
acinclude.m4 configure: also LDFLAGS, not LDLAGS for proper restore 2013-12-04 15:00:56 +01:00
aclocal.m4 configure: detect compiler flag 2013-10-25 00:41:36 +02:00
configure cache: New 'cachepool' segment type 2014-01-27 05:27:16 -06:00
configure.in cache: New 'cachepool' segment type 2014-01-27 05:27:16 -06: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 compile/link: use RELRO/PIE compiler/linker options for executables 2013-12-05 14:03:10 +01:00
Makefile.in test: Turn check_full into check_system complementary with normal check. 2013-12-15 17:26:28 +01:00
README Rename git report from LVM2.git to lvm2.git. 2012-06-08 17:41:43 +01:00
VERSION post-release 2014-01-20 19:41:30 +00:00
VERSION_DM post-release 2014-01-20 19:41:30 +00:00
WHATS_NEW raid: add temporary activation for raid metadata clear 2014-02-04 14:51:05 +01:00
WHATS_NEW_DM WHATS_NEW: be more specific about cryptsetup version that sets the udev flags 2014-01-22 15:48:40 +01: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.