]> sourceware.org Git - lvm2.git/log
lvm2.git
11 years agocleanup: move string in the use-place
Zdenek Kabelac [Fri, 14 Jun 2013 19:48:33 +0000 (21:48 +0200)]
cleanup: move string in the use-place

11 years agocleanup: drop unused headers
Zdenek Kabelac [Fri, 14 Jun 2013 07:52:02 +0000 (09:52 +0200)]
cleanup: drop unused headers

Drop heades which do not provide any used symbols.

11 years agocleanup: add extra internal error
Zdenek Kabelac [Fri, 14 Jun 2013 07:51:09 +0000 (09:51 +0200)]
cleanup: add extra internal error

Ensure the target line will work only with segment with pool.

11 years agoconfig: skip close of stdin
Zdenek Kabelac [Fri, 14 Jun 2013 21:18:29 +0000 (23:18 +0200)]
config: skip close of stdin

If the used stream has been stdout, do not close it.

11 years agomirror: add missing error message
Zdenek Kabelac [Sat, 15 Jun 2013 16:43:36 +0000 (18:43 +0200)]
mirror: add missing error message

When a user has not proceeded with conversion,
print the error message why the command has failed.

11 years agolvmetad: add some message for error path
Zdenek Kabelac [Fri, 14 Jun 2013 21:17:28 +0000 (23:17 +0200)]
lvmetad: add some message for error path

Do not leave replay uninitialized for internal error.

11 years agotext: miscellaneous comments & message tweaks
Alasdair G Kergon [Sat, 15 Jun 2013 00:28:54 +0000 (01:28 +0100)]
text: miscellaneous comments & message tweaks

11 years agoreport: revert lvs origin_size sort order change
Alasdair G Kergon [Sat, 15 Jun 2013 00:24:16 +0000 (01:24 +0100)]
report: revert lvs origin_size sort order change

Reinstate the previous sort order for origin_size, so that LVs with
an empty origin_size continue to appear at the start of the list
not the end.

Ref. 9d445f371c7658969d6580748233dc33c3ba0453

11 years agoconf: refine lvm.conf documentation for autoactivation feature even more
Peter Rajnoha [Fri, 14 Jun 2013 10:35:06 +0000 (12:35 +0200)]
conf: refine lvm.conf documentation for autoactivation feature even more

11 years agotypo: lvm.conf: auto_activation_list -> auto_activation_volume_list
Peter Rajnoha [Fri, 14 Jun 2013 08:07:07 +0000 (10:07 +0200)]
typo: lvm.conf: auto_activation_list -> auto_activation_volume_list

11 years agoman: refine lvm.conf and man page documentation for autoactivation feature
Peter Rajnoha [Fri, 14 Jun 2013 07:36:56 +0000 (09:36 +0200)]
man: refine lvm.conf and man page documentation for autoactivation feature

11 years agotests: harness updates
Zdenek Kabelac [Wed, 12 Jun 2013 12:16:25 +0000 (14:16 +0200)]
tests: harness updates

11 years agocleanup: tab
Zdenek Kabelac [Thu, 13 Jun 2013 12:10:49 +0000 (14:10 +0200)]
cleanup: tab

11 years agothin: vgsplit support for thins
Zdenek Kabelac [Thu, 13 Jun 2013 10:05:53 +0000 (12:05 +0200)]
thin: vgsplit support for thins

Support vgsplit for VGs with thin pools and thin volumes.
In case the thin data and thin metadata volumes are moved to a new VG,
move there also all related thin volumes and check that external origins
are also present in this new VG.

11 years agodev-type: refine dev_get_primary_dev return codes and add more comments
Peter Rajnoha [Wed, 12 Jun 2013 12:33:28 +0000 (14:33 +0200)]
dev-type: refine dev_get_primary_dev return codes and add more comments

11 years agodistclean: add missing items
Peter Rajnoha [Wed, 12 Jun 2013 10:51:38 +0000 (12:51 +0200)]
distclean: add missing items

These were missing in distclean target under scripts dir:
  blk_availability_init_red_hat
  blk_availability_systemd_red_hat.service
  blkdeactivate.sh

11 years agocleanup: remove old and unused code to detect partition types
Peter Rajnoha [Wed, 12 Jun 2013 10:46:46 +0000 (12:46 +0200)]
cleanup: remove old and unused code to detect partition types

This part of the code has not been used for ages, if ever.
If needed anytime in future, we should use some library
instead - libblkid?

11 years agofilter-mpath: detect partitions of mpath components
Peter Rajnoha [Wed, 12 Jun 2013 10:20:10 +0000 (12:20 +0200)]
filter-mpath: detect partitions of mpath components

We use mpath filtering (enabled by devices/multipath_component_detection=1
lvm.conf setting) to avoid a situation in which we could end up with
duplicate PVs found. We need to filter out the mpath components and
use only the top-level multipath mapping instead for PV scans.

However, if the there are partitions on multipath components, we need
to filter out these partitions. This patch fixes it so those
partitions found on multipath components are filtered as well.

For example, let's consider following configuration:
The sda and sdb are mpath components, sda1 and sdb1 the partitions
on these components, mpath-test the mpath mapping and mpath-test1
the partition mapping - created automatically by kpartx right
after mpath-test creation. The PV resides on top.

       (LVM PV)
          |
      mpath-test1
          |
      mpath-test
          |
sda1 ---------- sdb1
   \ |        |/
    sda      sdb

E.g. for sda1 and sdb1, the code will detect this and it skips
the partition that belongs to the multipath component:
  <snippet from the log>
    #filters/filter-mpath.c:156         /dev/sda1: Device is a partition, using primary device /dev/sda for mpath component detection
    130 #ioctl/libdm-iface.c:1724         dm status   (253:2) OF[16384](*1)
    131 #filters/filter-mpath.c:196         /dev/sda1: Skipping mpath component device
  </snippet from the log>

Othewise, we'd see the same PV label on sda1/sdb1 and mpath-test1
at the same time ending up with "Duplicate PV found...".

11 years agodev-type: dev_get_primary_dev fn: use dev_types and provide better return codes
Peter Rajnoha [Wed, 12 Jun 2013 10:14:11 +0000 (12:14 +0200)]
dev-type: dev_get_primary_dev fn: use dev_types and provide better return codes

The dev_get_primary_dev fn now returns:

  0 if the dev is already a primary dev
  1 if the dev is a partition, primary dev is returned in "result" (output arg)
  -1 on error

This way, we can better differentiate between the error state
and the state in which the dev supplied is not a partition
in the caller (this was same return value before).

Also, if we already have information about the device type,
we can check its major number against the list of known device
types (cmd->dev_types) directly, so we don't need to go through
the sysfs - we only check the major:minor pair which is a bit
more straightforward and faster. If the dev_types does not have
any info about this device type, the code just fallbacks to
the original sysfs interface to get the partition info.

11 years agorefactor: make device type recognition code common for general use
Peter Rajnoha [Wed, 12 Jun 2013 10:08:56 +0000 (12:08 +0200)]
refactor: make device type recognition code common for general use

Changes:

- move device type registration out of "type filter" (filter.c)
to a separate and new dev-type.[ch] for common use throughout the code

- the structure for keeping the major numbers detected for available
device types and available partitioning available is stored in
"dev_types" structure now

- move common partitioning detection code to dev-type.[ch] as well
together with other device-related functions bound to dev_types
(see dev-type.h for the interface)

The dev-type interface contains all common functions used to detect
subsystems/device types, signature/superblock recognition code,
type-specific device properties and other common device properties
(bound to dev_types), including partitioning support.

- add dev_types instance to cmd context as cmd->dev_types for common use

- use cmd->dev_types throughout as a central point for providing
information about device types

11 years agorefactor: move lib/device/device.c -> lib/device/dev-type.c
Peter Rajnoha [Wed, 12 Jun 2013 09:53:55 +0000 (11:53 +0200)]
refactor: move lib/device/device.c -> lib/device/dev-type.c

11 years agorefactor: move lib/filters/device-types.h -> lib/device/device-types.h
Peter Rajnoha [Wed, 12 Jun 2013 09:46:07 +0000 (11:46 +0200)]
refactor: move lib/filters/device-types.h -> lib/device/device-types.h

11 years agocleanup: use libdm's dm_sysfs_dir() for sysfs directory throughout
Peter Rajnoha [Wed, 12 Jun 2013 09:38:48 +0000 (11:38 +0200)]
cleanup: use libdm's dm_sysfs_dir() for sysfs directory throughout

And remove superfluous cmd->sysfs_dir and
set_sysfs_dir_path/sysfs_dir_path fn from lvm-globals.[ch].

11 years agolvresize: improve poolmetadatasize
Zdenek Kabelac [Tue, 11 Jun 2013 17:46:42 +0000 (19:46 +0200)]
lvresize: improve poolmetadatasize

Fix the usecase when only PV list is specified.
With --poolmetadatasize PV list is used for metadata extents.
Without --poolmetadatasize PV list is used for 100% extension of LV.
Handle the case, when nothing could be resized (i.e. in dmeventd)

11 years agolvresize: fix pvh handling
Zdenek Kabelac [Tue, 11 Jun 2013 12:55:32 +0000 (14:55 +0200)]
lvresize: fix pvh handling

Fix bug in previous patch - if only PVs are specified -
it's like if user would have specified size.

11 years agolibdm: move thin max size to header
Zdenek Kabelac [Wed, 22 May 2013 13:02:55 +0000 (15:02 +0200)]
libdm: move thin max size to header

Move max size of thin metadata into define.
Increase a bit the size to match the kernel size.
(16978542592->17112760320)

11 years agotests: lvresize thin
Zdenek Kabelac [Tue, 11 Jun 2013 11:35:18 +0000 (13:35 +0200)]
tests: lvresize thin

11 years agotests: extend harness
Zdenek Kabelac [Sat, 8 Jun 2013 20:23:39 +0000 (22:23 +0200)]
tests: extend harness

Add limit for buffer so if the test is running in some loop
and generating lots of output, the output log gets too large
for browser to display  (at least Firefox is quite confused
to display 300MB logs).

For now limit max output of one test to 32MB.
If there is need to see full log set LVM_TEST_UNLIMITED to
disable interruption of test.

harness now also prints max memory used during test,
it user and system time and amount of read/write operations.

11 years agothin: enable resize for thin pool metadata LV
Zdenek Kabelac [Tue, 11 Jun 2013 11:11:54 +0000 (13:11 +0200)]
thin: enable resize for thin pool metadata LV

Support 'clasic' way of resizing of metadata LV.
Normally we disallow to work with internal 'invisible' devices.
But in this case we can make an exception and if user has some
special needs how to extend thin pool metadata LV - support it.

After resize of metadata LV, the pool will be suspended and resumed,
to be notified of this change.

11 years agothin: lvresize supports pool metadata resize
Zdenek Kabelac [Tue, 11 Jun 2013 11:45:49 +0000 (13:45 +0200)]
thin: lvresize supports pool metadata resize

Add support for lvresize of thin pool metadata device.

lvresize --poolmetadatasize +20   vgname/thinpool_lv

or

lvresize -L +20 vgname/thinpool_lv_tmeta

Where the second one allows all the args for resize (striping...)
and the first option resizes accoding to the last metadata lv segment.

11 years agothin: add helper functions
Zdenek Kabelac [Tue, 11 Jun 2013 10:32:01 +0000 (12:32 +0200)]
thin: add helper functions

Add find_pool_lv() and pool_can_resize_metadata().

11 years agothin: detect online metadata resize support
Zdenek Kabelac [Tue, 11 Jun 2013 10:31:01 +0000 (12:31 +0200)]
thin: detect online metadata resize support

11 years agothin: report 'e' metadata type with higher priority
Zdenek Kabelac [Wed, 5 Jun 2013 11:46:38 +0000 (13:46 +0200)]
thin: report 'e' metadata type with higher priority

Giving volume type information about being 'metadata' type of volume
has higher priority then i.e.  'mirror' or 'thin' flag - for those
type we have 'target attr' (7th. field).

11 years agothin: report o as volume type for external origin
Zdenek Kabelac [Wed, 5 Jun 2013 11:45:31 +0000 (13:45 +0200)]
thin: report o as volume type for external origin

Reuse 'o' attr for lvs report also for external origin.

11 years agothin: report t for thin pool and volume
Zdenek Kabelac [Wed, 5 Jun 2013 11:44:10 +0000 (13:44 +0200)]
thin: report t for thin pool and volume

Do not mark internal device _tdata and _tmeta as having target type 't'.
They have the target type on their own (i.e. mirror, raid).

11 years agosnapshots: check for active state
Zdenek Kabelac [Tue, 11 Jun 2013 11:07:13 +0000 (13:07 +0200)]
snapshots: check for active state

Fix testing if the snapshot could be resized and use lv_is_active()
to get correct answer in cluster.

11 years agocleanup: skip test if already tested for SIGN_PLUS
Zdenek Kabelac [Tue, 11 Jun 2013 11:09:11 +0000 (13:09 +0200)]
cleanup: skip test if already tested for SIGN_PLUS

11 years agocleanup: remove {}
Zdenek Kabelac [Tue, 11 Jun 2013 11:45:36 +0000 (13:45 +0200)]
cleanup: remove {}

11 years agocleanup: move lv assignment
Zdenek Kabelac [Wed, 5 Jun 2013 11:28:26 +0000 (13:28 +0200)]
cleanup: move lv assignment

Use shorter  lv->.

11 years agoformat1: Fix snapshot reload in lv_remove.
Petr Rockai [Mon, 10 Jun 2013 15:31:13 +0000 (17:31 +0200)]
format1: Fix snapshot reload in lv_remove.

The special suspend/resume code in lv_remove for LVM1 snapshots was interpsersed
with a vg_commit call. However, while with LVM1 metadata, vg_commit is
technically a no-op, the activation code relied on the ondisk and incore
metadata being the same, since on LVM1, a "commit" happens in vg_write
already. Since the "ondisk" metadata was previously not available with format1
(and incore was silently used instead, via lvmcache), the problem was masked.

11 years agoactivation: Pass both ondisk and incore LV to suspend.
Petr Rockai [Tue, 19 Mar 2013 23:00:11 +0000 (00:00 +0100)]
activation: Pass both ondisk and incore LV to suspend.

11 years agometadata: Fix a pool CRC failure due to "late" ondisk copy creation.
Petr Rockai [Mon, 18 Mar 2013 14:46:00 +0000 (15:46 +0100)]
metadata: Fix a pool CRC failure due to "late" ondisk copy creation.

11 years agoActually pass LV metadata to activation code, when available.
Petr Rockai [Sun, 17 Mar 2013 20:49:00 +0000 (21:49 +0100)]
Actually pass LV metadata to activation code, when available.

This ties the two preceding changes together, actually using the "ondisk"
version of VG metadata instead of calling into lvmcache when activating
volumes. The cache hooks are still used as a fallback, because we don't have an
uncached scanning API yet.

11 years agolocking: Make it possible to pass down an LV to activation code.
Petr Rockai [Sun, 17 Mar 2013 20:29:58 +0000 (21:29 +0100)]
locking: Make it possible to pass down an LV to activation code.

Previously, we have relied on UUIDs alone, and on lvmcache to make getting a
"new copy" of VG metadata fast. If the code which triggers the activation has
the correct VG metadata at hand (the version which is currently on disk), it can
now hand it to the activation code directly.

11 years agoAdd and track an "ondisk" pointer to struct volume_group.
Petr Rockai [Sun, 17 Mar 2013 15:27:44 +0000 (16:27 +0100)]
Add and track an "ondisk" pointer to struct volume_group.

This allows us to get the current on-disk version of the metadata whenever we
have the current in-flight version, without a recourse to scanning or lvmcache.

11 years agoMove export_vg_to_config_tree alongside export_vg_to_buffer.
Petr Rockai [Sun, 17 Mar 2013 15:25:12 +0000 (16:25 +0100)]
Move export_vg_to_config_tree alongside export_vg_to_buffer.

11 years agotest: Avoid hardcoding path to bash (not all systems have /bin/bash).
Petr Rockai [Mon, 10 Jun 2013 09:28:47 +0000 (11:28 +0200)]
test: Avoid hardcoding path to bash (not all systems have /bin/bash).

11 years agoinitscripts: add pidfile reference in chkconfig header for clvmd and cmirrord
Peter Rajnoha [Fri, 7 Jun 2013 12:07:56 +0000 (14:07 +0200)]
initscripts: add pidfile reference in chkconfig header for clvmd and cmirrord

When the init scripts are run from within systemd, the systemd
needs to know the pidfile for it to work correctly when the
daemon itself is killed. Otherwise, systemd keeps these services
in "active" and "exited state" at the same time
(it assumes RemainAfterExit=yes without the pidfile reference in
chkconfig header).

See also https://bugzilla.redhat.com/show_bug.cgi?id=971819#c5.

11 years agotests: performance testing
Zdenek Kabelac [Thu, 6 Jun 2013 10:14:53 +0000 (12:14 +0200)]
tests: performance testing

Tests speed of activation and deactivation of a lot of volumes.
Currently limited to 1000LVs
TODO: explore why lvmetad fails with higher number.

11 years agotests: check for real mirror target type
Zdenek Kabelac [Tue, 4 Jun 2013 09:08:45 +0000 (11:08 +0200)]
tests: check for real mirror target type

Use new available attr instead of guessing...

11 years agotests: fix strings test
Zdenek Kabelac [Tue, 4 Jun 2013 09:07:18 +0000 (11:07 +0200)]
tests: fix strings test

For non udev path use DM_DEFAULT_NAME_MANGLING_MODE.
Skip this test when using real /dev dir, since udev is not able
to create such device name unless mangled...

11 years agotests: update test
Zdenek Kabelac [Tue, 4 Jun 2013 08:37:08 +0000 (10:37 +0200)]
tests: update test

Fix !test -> test !

11 years agotests: compilation updates
Zdenek Kabelac [Mon, 3 Jun 2013 10:09:21 +0000 (12:09 +0200)]
tests: compilation updates

11 years agotests: configurable LVM_TEST_RESULTS
Zdenek Kabelac [Mon, 3 Jun 2013 10:07:31 +0000 (12:07 +0200)]
tests: configurable  LVM_TEST_RESULTS

Make LVM_TEST_RESULTS configurable
Cleanup results dir on 'make clean'

11 years agomakefiles: cleanup update
Zdenek Kabelac [Mon, 3 Jun 2013 10:05:02 +0000 (12:05 +0200)]
makefiles: cleanup update

Cleanup also test dir.
Distclean unit tests.

11 years agotests: bigger alignment
Zdenek Kabelac [Sun, 2 Jun 2013 21:57:53 +0000 (23:57 +0200)]
tests: bigger alignment

Test names got a bit longer...

11 years agocleanup: code update and typo fix
Zdenek Kabelac [Mon, 3 Jun 2013 06:38:07 +0000 (08:38 +0200)]
cleanup: code update and typo fix

Use the same style of loop for all filter functions.
Fix type compsoite -> Composite.

11 years agofilters: dump filter returns error code
Zdenek Kabelac [Sun, 2 Jun 2013 21:27:34 +0000 (23:27 +0200)]
filters: dump filter returns error code

Add int return value from dump() function.
Report stack for error case.
Update composable filter.

11 years agofilters: compile fix
Zdenek Kabelac [Sun, 2 Jun 2013 21:16:41 +0000 (23:16 +0200)]
filters: compile fix

Add missing cast in previous commit.

11 years agofilters: update composable filter
Zdenek Kabelac [Sun, 2 Jun 2013 19:59:57 +0000 (21:59 +0200)]
filters: update composable filter

Last commit made dump filter only partially composable.
Add remaining functionality and also support composable wipe,
which is needed, when i.e. vgscan needs to remove cache.

(in release fix)

11 years agotests: clear write to /tmp
Zdenek Kabelac [Sat, 1 Jun 2013 22:27:00 +0000 (00:27 +0200)]
tests: clear write to /tmp

11 years agotests: do not expose duplicate PVs in vgimportclone.sh
Petr Rockai [Mon, 27 May 2013 12:48:45 +0000 (14:48 +0200)]
tests: do not expose duplicate PVs in vgimportclone.sh

11 years agotests: collect all test results in files
Petr Rockai [Mon, 27 May 2013 02:26:33 +0000 (04:26 +0200)]
tests: collect all test results in files

Use files  for later processing with suffix .txt
to avoid mime type confusion.

11 years agotests: run all the test flavours in a single batch
Petr Rockai [Mon, 27 May 2013 01:12:03 +0000 (03:12 +0200)]
tests: run all the test flavours in a single batch

This means that a test failure in one flavour no longer prevents all the
subsequent flavours from running. We also get an aggregate summary at
the end of the entire batch, instead of summaries interspersed with
progress output. Do not fail when flavour overrides are empty

11 years agotests: make filter extension more robust
Petr Rockai [Mon, 27 May 2013 00:03:00 +0000 (02:03 +0200)]
tests: make filter extension more robust

11 years agotests: set up global_filter instead of just filter
Petr Rockai [Sun, 26 May 2013 22:53:03 +0000 (00:53 +0200)]
tests: set up global_filter instead of just filter

For testing setup global_filter.

11 years agotests: skip the double log failure test on 2.6
Petr Rockai [Sun, 26 May 2013 16:53:29 +0000 (18:53 +0200)]
tests: skip the double log failure test on 2.6

On 2.6 kernels this deadlocks.

11 years agotests: add hide_dev/unhide_dev to aux
Petr Rockai [Sun, 28 Apr 2013 20:41:15 +0000 (22:41 +0200)]
tests: add hide_dev/unhide_dev to aux

Add helper func for easy filter adjustment.

11 years agolvmetad: no use of persistent filter with lvmetad
Petr Rockai [Sun, 26 May 2013 23:55:14 +0000 (01:55 +0200)]
lvmetad: no use of persistent filter with lvmetad

11 years agofilters: toplevel filter not persistent
Petr Rockai [Sun, 26 May 2013 22:49:40 +0000 (00:49 +0200)]
filters: toplevel filter not persistent

Add a generic dump operation to filters and make the composite filter call
through to its components. Previously, when global filter was set, the code
would treat the toplevel composite filter's private area as if it belonged a
persistent filter, trying to write nonsense into a non-sensical file.
Also deal with NULL cmd->filter gracefully.

11 years agovgimportclone: override global_filter in lvm.conf
Petr Rockai [Sun, 28 Apr 2013 20:38:22 +0000 (22:38 +0200)]
vgimportclone: override global_filter in lvm.conf

The global filter in system's lvm.conf may conflict with the custom filter we
set up in vgimportclone (they can easily fail to intersect). Since we explicitly
avoid talking to lvmetad in vgimportclone, it is safe and reasonable to do so.

11 years agotests: missed skip in test
Zdenek Kabelac [Fri, 31 May 2013 19:58:51 +0000 (21:58 +0200)]
tests: missed skip in test

11 years agotests: test mirrors in clustered way
Zdenek Kabelac [Fri, 31 May 2013 19:11:51 +0000 (21:11 +0200)]
tests: test mirrors in clustered way

Make the clustered testing using cluster locking for most of the tests.
Use exclusive activation for mirrors and snapshot origins.

11 years agotests: move raid test to separate file
Zdenek Kabelac [Fri, 31 May 2013 15:35:24 +0000 (17:35 +0200)]
tests: move raid test to separate file

11 years agotests: skip if the system already uses tested minor
Zdenek Kabelac [Fri, 31 May 2013 10:48:37 +0000 (12:48 +0200)]
tests: skip if the system already uses tested minor

11 years agotests: min snap chunk count is 3
Zdenek Kabelac [Fri, 31 May 2013 09:01:59 +0000 (11:01 +0200)]
tests: min snap chunk count is 3

11 years agomirror: implement check for remotely active LV
Zdenek Kabelac [Fri, 31 May 2013 17:10:07 +0000 (19:10 +0200)]
mirror: implement check for remotely active LV

If the mirror is active exclusively and locally, then we may proceed.

11 years agolvcreate: update thin validation
Zdenek Kabelac [Fri, 31 May 2013 09:02:52 +0000 (11:02 +0200)]
lvcreate: update thin validation

Merge duplicate code that was validating lvcreate args
for creation of thin and snapshot.

Keep most of thin checks in _check_thin_parameters().

Update couple error messages.

11 years agolvcreate: update snapshot test
Zdenek Kabelac [Fri, 31 May 2013 09:00:29 +0000 (11:00 +0200)]
lvcreate: update snapshot test

With last commit, there has been missing test for valid setting
of extents - there is no need to test max size when creating
thin snapshots.

11 years agoDM RAID: Add ability to throttle sync operations for RAID LVs.
Jonathan Brassow [Fri, 31 May 2013 16:25:52 +0000 (11:25 -0500)]
DM RAID:  Add ability to throttle sync operations for RAID LVs.

This patch adds the ability to set the minimum and maximum I/O rate for
sync operations in RAID LVs.  The options are available for 'lvcreate' and
'lvchange' and are as follows:
  --minrecoveryrate <Rate> [bBsSkKmMgG]
  --maxrecoveryrate <Rate> [bBsSkKmMgG]
The rate is specified in size/sec/device.  If a suffix is not given,
kiB/sec/device is assumed.  Setting the rate to 0 removes the preference.

11 years agoClean-up: Fix copy-n-paste error
Jonathan Brassow [Fri, 17 May 2013 19:30:29 +0000 (14:30 -0500)]
Clean-up:  Fix copy-n-paste error

Description for --with-raid should be s/mirror/raid/.

11 years agotests: snapshot needs 3 chunks
Zdenek Kabelac [Thu, 30 May 2013 15:55:44 +0000 (17:55 +0200)]
tests: snapshot needs 3 chunks

11 years agocleanup: fix tabs
Zdenek Kabelac [Thu, 30 May 2013 15:56:02 +0000 (17:56 +0200)]
cleanup: fix tabs

11 years agotests: snapshot testing
Zdenek Kabelac [Wed, 29 May 2013 21:36:44 +0000 (23:36 +0200)]
tests: snapshot testing

11 years agotests: drop testing of raids in cluster
Zdenek Kabelac [Wed, 29 May 2013 10:48:29 +0000 (12:48 +0200)]
tests: drop testing of raids in cluster

Since raid is not clustered yet - drop it from testing in cluster phase.
(saving running some time)

11 years agolibdm: compensate suspend counter for live table
Zdenek Kabelac [Thu, 30 May 2013 09:19:28 +0000 (11:19 +0200)]
libdm: compensate suspend counter for live table

This patch may not be fully correct. It tries to solve
the imbalanced suspend counter.

The problem starts when some LV is created and fails in resume path.
(i.e. resuming to large PV (enforced) over small loop devices)

This fails in _resume_node() after dm_task_run(). And while
existing device with empty table is left in inactive table,
further calls are reporting this device is in suspend state.

When later the lvm2 tries to rollback created device and deactivate it,
it will end with internal error, when we try to decrement
never incremented suspend counter.

As an 'easy fix' for now update suspend counter only for live nodes.

TODO: explore better fix.

11 years agolvresize: drop monitoring of 100% covered origin
Zdenek Kabelac [Wed, 29 May 2013 19:23:18 +0000 (21:23 +0200)]
lvresize: drop monitoring of 100% covered origin

11 years agolvresize: check for max snapshot size
Zdenek Kabelac [Wed, 29 May 2013 19:23:02 +0000 (21:23 +0200)]
lvresize: check for max snapshot size

As for lvcreate, lvresize also doesn't need to grow bigger then needed.

11 years agolvcreate: reduce too large cow
Zdenek Kabelac [Wed, 29 May 2013 19:43:46 +0000 (21:43 +0200)]
lvcreate: reduce too large cow

Detect maximum usable size of snapshot COW device,
and do not waste more space for such LV then needed.

11 years agosnapshot: add cow_max_extents
Zdenek Kabelac [Wed, 29 May 2013 10:44:54 +0000 (12:44 +0200)]
snapshot: add cow_max_extents

Add more precise calculation of the maximum usable snapshot size.
Using only percentage fails for small size of snapshot and extents.

11 years agosnapshot: require 3 chunks for creation
Zdenek Kabelac [Wed, 29 May 2013 10:39:33 +0000 (12:39 +0200)]
snapshot: require 3 chunks for creation

There is no point in creation of 2chunks snapshot,
since the snapshot is invalidated immeditelly with the first write
as there is no free chunk for COW blocks
(2 chunks are used by the snap header and the 1st. metadata chunk).

Enhance error message about the lowest usable size.

11 years agocleanup: test for -1 value for lseek error
Zdenek Kabelac [Wed, 29 May 2013 10:38:09 +0000 (12:38 +0200)]
cleanup: test for -1 value for lseek error

Error is defined as -1.
Yet it seems we are unable to seek to 0 for devices > 8Exabytes.

11 years agosnapshot: fix resize of 100% full cow
Zdenek Kabelac [Wed, 29 May 2013 19:17:15 +0000 (21:17 +0200)]
snapshot: fix resize of 100% full cow

When the COW area is using all the available space (100%) it can be still
a valid snapshot which may need a resize. So support it.

11 years agoargs: do not accept >=16EiB sizes
Zdenek Kabelac [Wed, 29 May 2013 12:50:21 +0000 (14:50 +0200)]
args: do not accept >=16EiB sizes

Instead of seeing wierd overflows inside the lvm code,
giving false error messages, kill the user experiment in the begining.

Who needs to use more then 16EiB with lvm2 and 64bit anyway...

11 years agolibdm: add public macro DM_TO_STRING
Zdenek Kabelac [Wed, 29 May 2013 10:46:21 +0000 (12:46 +0200)]
libdm: add public macro DM_TO_STRING

Since this stringifying macro is usable in more places,
move it to the public header with DM_ prefix.

11 years agofid: fix reset of PV fid
Zdenek Kabelac [Wed, 29 May 2013 10:42:09 +0000 (12:42 +0200)]
fid: fix reset of PV fid

Avoid hitting memory corruption (double free) in code path,
where PV FID has been already destroyed and the released pointer
was left in PV structure and could have been tried to be released
from there 2nd. time with final context destruction.

11 years agodmeventd: revert back percent to int
Zdenek Kabelac [Wed, 29 May 2013 10:29:48 +0000 (12:29 +0200)]
dmeventd: revert back percent to int

int is perfectly ok here.

11 years agoman: ea_start/ea_size -> ba_start/ba_size
Peter Rajnoha [Thu, 30 May 2013 09:45:44 +0000 (11:45 +0200)]
man: ea_start/ea_size -> ba_start/ba_size

11 years agoWHATS_NEW: return success on dmeventd -V
Peter Rajnoha [Wed, 29 May 2013 11:24:16 +0000 (13:24 +0200)]
WHATS_NEW: return success on dmeventd -V

11 years agodmeventd: always return success on dmevetnd -V
Peter Rajnoha [Wed, 29 May 2013 10:54:42 +0000 (12:54 +0200)]
dmeventd: always return success on dmevetnd -V

This page took 0.072565 seconds and 5 git commands to generate.