| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
| |
Was left unused from the last change to this function.
|
|
|
|
|
|
|
| |
Because of the recent change to process_each_pv(), the vg is always
provided when the pv is in a vg. is_pv(pv) means the pv is in a vg,
which means that the vg arg will not be NULL, which means the removed
block of code is not needed.
|
| |
|
|
|
|
|
| |
Relax validation to permit extent sizes > 128KB that are not powers of 2
with lvm2 format. Existing code was already capable of handling this.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug https://bugzilla.redhat.com/show_bug.cgi?id=843587 is handled better
now - the hang does not occur anymore. There are still error messages
issued though during shutdown if someone stops lvm2-lvmetad.service
manually that lvm2-monitor.service depends on (even during shutdown).
These errors are correct though and will point to incorrect
configuration (still having use_lvmetad=1 in lvm.conf and stopping
lvm2-lvmetad.service manually).
The workaround to prevent the hang is not needed now. So the
'--config "global{use_lvmetad=0}"' is now removed from the
lvm2-monitor.service's ExecStop line.
|
| |
|
| |
|
|
|
|
|
| |
Lets make a separate new function to validate names that has
to follow up restriction rules.
|
|
|
|
|
|
|
|
|
|
| |
for lvmetad
We can't hang on blocked or suspended devices when the scan is done
for lvmetad update - when the device gets unblocked or resumed, there's
always CHANGE event generated which will fire the udev rule to run
extra pvscan --cache for that device which makes sure that lvmetad
is up-to-date.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When we are given an existing LV name - it needs to be allowed
to pass in even restricted name as the LV could have existed
long before we introduced some new restriction on prefix/suffix.i
Fix the regression on name limits and drop restriction to be applied
on any existing LVs - only the new created LV names have to be
complient with current name restrictions.
FIXME: we are currently using restricted names incorrectly in few
other places - device_is_usable() skips restricted names,
and udev flags are also incorrectly set for restricted names
so these LVs are not getting links properly.
|
|
|
|
|
| |
Use some standard names for lv char * names, logical_volume * lv
and sizes internally.
|
| |
|
| |
|
|
|
|
| |
Skip some tests on systems without cache or raid.
|
| |
|
|
|
|
| |
Just skip using local vars here...
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
find_pv_in_vg
find_pv_in_vg fn iterates over the list of PVs covered by the VG and
each PV's pvl->pv->dev is compared with device acquired from device
cache. However, in case pvl->pv->dev is NULL as well as device cache
returns NULL (e.g. when device is filtered), we'll get incorrect match
and the code calling find_pv_in_vg uses incorrect PV (as it thinks
it's the exact PV with the pv_name). The INTERNAL_ERROR covers this
situation and errors out immediately.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The warnings arg was used to enable logging of warnings
when reading a PV. This arg is turned into a set of flags
with the WARN_PV_READ flag matching the existing behavior.
A new flag WARN_INCONSISTENT is added that will cause
vg_read_internal() to log the "VG is not consistent"
warning so the various callers do not need to log
this warning themselves.
A new vg_read flag READ_WARN_INCONSISTENT is used from
reporting to enable the WARN_INCONSISTENT flag in
vg_read_internal.
[Committed by agk with cosmetic changes and tweaks.]
|
|
|
|
|
|
| |
Adapt process_each_pv for use by vgreduce in the non-repair case.
[Committed by agk with cosmetic changes and tweaks.]
|
|
|
|
|
|
|
|
| |
Process PVs by iterating through VGs, then iterating through
devices if the command needs to process non-PV devices.
The process_single function can always use the VG and PV args.
[Committed by agk with cosmetic changes and tweaks.]
|
|
|
|
|
| |
Avoids message:
Metadata cache has no info for vgname: "#global"
|
|
|
|
|
|
| |
When converting an origin to a cache lv, lvm will automatically convert
the specified cache pool into a cache pool if it is not already a cache
pool.
|
| |
|
| |
|
|
|
|
|
|
| |
lvcreate of thin pools can now use '-n lv vg' like other lv types,
or it can name the new thin pool in the free arg as 'vg/lv', which
is not allowed with other lv types.
|
| |
|
|
|
|
| |
Checked stacking usage of thin pool data volume being cached.
|
|
|
|
| |
More tests.
|
|
|
|
| |
Many new tests
|
|
|
|
|
|
| |
Fix unsupportable case.
We cannot create thinpool and snapshot at the same time.
(-L could not have 2 meanings).
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Function get_only_segment_using_this_lv() already prints error,
no need to show more internal logic to user as an error.
|
|
|
|
| |
Use 1|0 inside _lvconvert_splitsnapshot to match rest of code.
|
|
|
|
| |
We could validation pool chunk size with a single function.
|
|
|
|
| |
Reuse thin validation code for cache pool validation.
|
|
|
|
|
| |
Earlier validation of --size and --extents.
Reject 0 size on command line instantly.
|
|
|
|
|
| |
Since we now have validate_pool_chunk_size() we could
validate entered values directly prior openning vg.
|
| |
|
|
|
|
|
|
| |
Introduce pool function for validation of chunk size.
It's good idea to be able to reject invalid chunk size
when entered on command line before we open VG.
|