| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
VG uuids can be used in place of VG names as command
args for commands using process_each_vg. The command
line uuid format includes dashes.
As with tags, processing vg uuid args requires
process_each_vg to read all vgs to match their
uuid against the uuid args.
If a command line uuid arg matches one vg's name
and another vg's uuid, the vg with matching name
will be selected.
|
| |
|
|
|
|
|
|
| |
Process pvs by iterating through vgs, then iterating through
devs if the command wants to process non-pv devices. The
process_single function can always use the vg and pv args.
|
|
|
|
|
|
|
| |
The ENABLE_ALL_DEVS flag is added to the command structure
for commands that should process all devs (pvs and non-pvs)
when they call process_each_pv and the command includes the
--all arg. This will be used in a later process_each_pv patch.
|
|
|
|
|
| |
The failed_lvnames arg is no longer used since the
cmd_vg replicator wrapper was removed.
|
|
|
|
| |
Include in the error message the lv name args that were not found.
|
|
|
|
|
|
| |
- Copy the same form as the new process_each_vg.
- Replace unused struct cmd_vg and cmd_vg_read() replicator
code with struct vg and vg_read() directly.
|
|
|
|
|
|
|
|
| |
- Split the collecting of arguments from processing them.
- The split allows the two different loops through vgs to
be replaced by a single loop.
- Replace unused struct cmd_vg and cmd_vg_read() replicator
code with struct vg and vg_read() directly.
|
|
|
|
|
|
|
| |
The ENABLE_ALL_VGS flag is added to the command structure
for commands that should process all vgs when they call
process_each_vg or process_each_lv with no args.
This will be used in later patches to process_each functions.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
kernels > 2.4
Since kernel > 2.4 have dynamically assigned major numbers.
[0] raw/~ $ lvcreate -l1 -My --minor 10 vg
Logical volume "lvol0" created
[0] raw/~ $ lvcreate -l1 -My --major 254 --minor 11 vg
Ignoring supplied major number - kernel assigns major numbers dynamically. Using major number 253 instead.
Logical volume "lvol1" created
[0] raw/~ $ lvs --profile out -o+major,minor
lvol0 vg -wima----- 4.00 253 10
lvol1 vg -wima----- 4.00 253 11
|
|
|
|
| |
Used rhel7 autoreconf.
|
| |
|
|
|
|
| |
Update thin provisioning tools to version 0.3.2 or later!
|
|
|
|
|
| |
Avoid using variables with same name as functions.
Use lvm_even_rand for random numbers.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When down-converting a RAID1 LV, if the user specifies too few devices,
they will get a confusing message.
Ex:
[root]# lvcreate -m 2 --type raid1 -n raid -L 500M taft
Logical volume "raid" created
[root]# lvconvert -m 0 taft/raid /dev/sdd1
Unable to extract enough images to satisfy request
Failed to extract images from taft/raid
This patch makes the error message a bit clearer by telling the user
the count they are trying to remove and the number of devices they
supplied.
[root@bp-01 lvm2]# lvcreate --type raid1 -m 3 -L 200M -n lv vg
Logical volume "lv" created
[root@bp-01 lvm2]# lvconvert -m -3 vg/lv /dev/sdb1
Unable to remove 3 images: Only 1 device given.
Failed to extract images from vg/lv
[root@bp-01 lvm2]# lvconvert -m -3 vg/lv /dev/sd[bc]1
Unable to remove 3 images: Only 2 devices given.
Failed to extract images from vg/lv
[root@bp-01 lvm2]# lvconvert -m -3 vg/lv /dev/sd[bcd]1
[root@bp-01 lvm2]# lvs -a -o name,attr,devices vg
LV Attr Devices
lv -wi-a----- /dev/sde1(1)
This patch doesn't work in all cases. The user can specify the right
number of devices, but not a sufficient amount of devices from the LV.
This will produce the old error message:
[root@bp-01 lvm2]# lvconvert -m -3 vg/lv /dev/sd[bcf]1
Unable to extract enough images to satisfy request
Failed to extract images from vg/lv
However, I think this error message is sufficient for this case.
|
|
|
|
|
| |
Initial description and instructions for
data/metadata space exhaustion.
|
| |
|
|
|
|
| |
For cache flushing local exlusive activation is needed.
|
| |
|
|
|
|
| |
TODO: in fact we should parameter LV.
|
| |
|
|
|
|
|
|
| |
Passing non cached device is an internal error.
Print messages at non-error level.
Shorten sleep delay for cache flush.
|
|
|
|
| |
Policy should be const char pointer.
|
|
|
|
| |
Using same error message for pool associated devices.
|
|
|
|
|
|
| |
Start to change metadata after they are archived.
And since cache_pool is virtual skip deactivation
call for this LV.
|
|
|
|
|
|
|
| |
Since the usability problem were fixed, we can use this function.
Cleanup orphan LVs with TEMPORARY flags
(reduces couple blkid error reports, but couple of them
is still left...)
|
|
|
|
|
|
|
|
|
| |
Since cache segment is purely virtual mapping, it has nothing for
discard. Discardable is cache origin here which is now
properly removed on 'delete' phase.
Plain lv_empty() call needs to only detach cache origin and leave
origin unchanged.
|
|
|
|
|
| |
Since cache-pool is purely lvm abstraction layer LV, it never
need any device node, so do not add even 'error' device for it.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
config/config_settings.h:257:102: error: 'DMEVENTD_PATH' undeclared here (not in a function)
|
|
|
|
| |
Drop test, which are now in other files (listings.sh)
|
| |
|
|
|
|
| |
Use normal '||'.
|
| |
|
|
|
|
|
| |
Since the whole dm device name may not exceed 127 characters,
validate no LV names is bigger then this limit.
|
|
|
|
|
| |
Failing resume path means command has failed,
even when commit was ok.
|