| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
|
| |
When selecting a convenience RAID type only display
the selected type when it changed. Display proper
current raid type when prompting.
|
|
|
|
|
| |
Avoid 2 prompts when downconverting raid1 to linear
(related commit 0f65d7ec3a7325165af1a9f722cb760fd363e932).
|
|
|
|
|
|
|
|
|
| |
Avoid error message
"Logical Volume *_rimage_0 already exists in volume group,,,"
on takeover conversion from a 2-legged raid1 to raid4
(aiming to reshape it adding images).
Resolves: rhbz1439398
|
|
|
|
|
|
| |
Don't change resilience of raid1 LVs without --yes.
Adjust respective tests.
|
|
|
|
|
|
|
| |
Requesting _raid_remove_images() to commit the
metadata missed to reload the origin causing a
kernel takeover error converting a 2-legged raid1
(with previously removed images) to raid5.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
Allow the combination of both arguments keeping
the raid level but changing the regionssize
(e.g. "lvconvert --type raid1 --regionsize 1M RaidLV"
on an existing raid1 LV).
Resolves: rhbz1438396
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
lvchange/lvconvert operations that do not require the LV
to already be active need to acquire a transient LV lock
before changing/converting the LV to ensure the LV is not
active on another host. If the LV is already active,
a persistent LV lock already exists on the host and the
transient LV lock request is a no-op.
Some lvmlockd locks in lvchange were lost in the cmd def
changes. The lvmlockd locks in lvconvert seem to have
been missed from the start.
|
| |
|
|
|
|
|
| |
A return value from lvchange_persistent_cmd() was missed
in commit 1c41898c07ad750820fb39770355fded8e9b030a
|
|
|
|
|
|
|
|
|
|
| |
--startstopservices
We have to unset the LoadState variable from previous use when we check
for systemd unit state. We use this variable to check if systemd services
are loaded or not and if it is loaded, we issue systemctl commands to
enable/disable and start/stop the service. We don't issue these commands
if the unit is not loaded to avoid error messages which may confuse users.
|
|
|
|
|
| |
(The cmd def parser really needs to catch mistakes
like this as it did when it was external.)
|
|
|
|
|
|
|
|
|
|
| |
The actual value specified by the --poll y|n option was not
being used. The way the --poll value is used is hidden
through an indirection where the value is stored in a
global variable at the start of the command, and then the
value is read from there later. Setting the global
variable early in the command had been lost with the
cmd def changes.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fill in some gaps where old versions of lvm allowed
--poll and --monitor in combination with other operations,
but those combinations had been lost since the cmd def work.
(The new cmd def code also added some combinations that
had been missed by the old code.)
Changes:
lvchange --activate: add poll and monitor options, and
add calls to them in implementation.
lvchange --refresh: add monitor option (poll already there),
and call to monitor in implementation.
lvchange <metadata ops>: add poll and monitor options, and
add calls to them in implementation.
vgchange <metadata ops>: add poll option (call to poll
already in implementation).
vgchange --refresh: remove monitor option (not used by code)
lvchange --persistent y: add poll and monitor options, and
add calls to them, and to activate
in the implementation. (Making it
match the main lvchange metadata
command.)
Summary of current usage:
lvchange --activate: monitor, poll
vgchange --activate: monitor, poll
lvchange --refresh: monitor, poll
vgchange --refresh: poll
lvchange --monitor: ok
lvchange --poll: ok
lvchange --monitor --poll: ok
vgchange --monitor: ok
vgchange --poll: ok
vgchange --monitor --poll: ok
lvchange <metadata ops>: monitor, poll
vgchange <metadata ops>: poll
|
|
|
|
|
|
|
|
|
|
|
| |
Enhance commit 25b5915c9b5260c59d627bd1f6db8220bd4ad61e
to process options requiring immediate metadata commits
and reloads after those we can group together doing just
one commit and an optional reload for the whole group.
Backup metadata after processing options successfully.
Related: rhbz1437611
|
| |
|
|
|
|
| |
A hidden LV can not be converted to a thin pool or cache pool.
|
|
|
|
|
|
|
| |
Don't abbreviate the --help output quite as much
when there are many command defs. Print all the
options in the cmd defs that are shown. --longhelp
output is unchanged and includes everything.
|
|
|
|
| |
Does not affect parsing, but keep it consistent.
|
|
|
|
|
|
| |
It can sometimes be important to correlate a
command with its cmd def entry, so include
the cross reference info in help -vv output.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
These days --partial is only used with activation in
lvchange/vgchange. It probably had another meaning
at some point in history which is no longer used,
so ignore it in those cases.
When included in the OO list, the option is advertised in
help/man output, implying it is meaningful to the command,
when in fact the command never uses it.
The IO list means the option won't cause an error if it's
used, but is not displayed as an valid option for the command.
If the option is not included in either OO or IO lists,
using the option would cause a command error, which would cause
problems for anyone is using the option for historical reasons.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
_lvchange_properties_single() processes multiple command
line arguments in a loop causing metadata updates and/or
backups per argument.
Optimize to only perform one update and/or backup
(but necessary interim ones; e.g. for --resync)
per command run.
Related: rhbz1437611
|
|
|
|
|
|
|
| |
Use only selected paths for finding .so in builddir.
So if builddir constains some embeded subdirs with some more
occurences of project (i.e. 'make rpm' build subdir)
those library paths will not get into list.
|
|
|
|
|
|
|
|
|
|
|
|
| |
With monolithic kernels we can't actually modprobe
for cache modules as they are already compiled-in
and policy modules do not export version symbol.
Reported issue on list:
https://www.redhat.com/archives/dm-devel/2017-March/msg00061.html
Fix will try to look for explicit kernel symbols first before
calling modprobe.
|
|
|
|
|
|
| |
Optimized change.
Resolves: rhbz1437611
|
|
|
|
|
|
|
|
|
| |
Fix a regression introduced by new command line processing
(see starting commit 1e2420bca85da9a37570871cd70192e9ae831786)
causing activation to be rejected in combination with setting
persistent minor device numbers.
Resolves: rhbz1437611
|
| |
|
|
|
|
| |
Flush stdout and switch it back to line buffering before exit.
|
|
|
|
|
| |
Set block buffering on stdout to
save ~30% time generating manuals.
|
|
|
|
|
|
| |
In case we provide a description file it has to
succeed opening and reading. Dynamically allocate
buffer space for it whilst on it.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
The bitmap size in dm_bitset_t[0] is a uint32_t, not uint64_t: use
%u instead of FMTu64.
|
| |
|
|
|
|
|
|
| |
Use uint64_t where possible and explicit casts elsewhere to avoid
compiler warnings when converting between int, int64_t and
uint64_t.
|
| |
|
| |
|
| |
|
| |
|