| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When processing historical LVs inside process_each_lv_in_vg for
selection, we need to use dummy "_historical_lv" for select_match_lv.
This is because a historical LV is not an actual LV, but only a tiny
representation with subset of original properties that we recorded
(name, uuid...).
To use the same processing functions we use for full-fledged non-historical
LVs, we need to use the prefilled "_historical_lv" structure which has all
the other missing properties hard-coded.
|
| |
|
|
|
|
|
|
|
|
| |
Allow to use --vdosettings with lvcreate,lvconvert,lvchange.
Support settings currenly only configurable via lvm.conf.
With lvchange we require inactivate LV for changes to be applied.
Settings block_map_era_length has supported alias block_map_period.
|
| |
|
|
|
|
|
|
|
|
| |
Explicit wwid's from these sections control whether the
same wwid in /etc/multipath/wwids is recognized as a
multipath component. Other non-wwid keywords are not
used, and may require disabling the use of the multipath
wwids file in lvm.conf.
|
|
|
|
| |
don't remove dash from loop file name
|
|
|
|
|
| |
vgchange -u exit path was unlocking the devices file in cases
when it wasn't needed, which produced an warning.
|
|
|
|
|
|
| |
in vgcreate for shared sanlock vg, if sanlock_write_resource
returns an unexpected error, then make init_vg_sanlock fail
which will cause the vgcreate to fail.
|
| |
|
|
|
|
|
| |
The case of filters returning EAGAIN and using the
FILTER_AFTER_SCAN flag is no longer used.
|
|
|
|
|
| |
When used with --deviceidtype, --deldev can specify
a device id to remove.
|
|
|
|
|
|
|
|
| |
When a VG has PVs with different device id types,
it would try to use the idtype of the previous PV
in the loop. This would produce an unncessary warning,
or could lead to using the devname idtype when a better
idtype is available.
|
|
|
|
|
|
|
|
|
|
| |
In most installations, /dev/sda* or /dev/vda* should be included
in system.devices because the root, home, etc LVs are usually on
sda or vda.
Add a special case warning when a pvscan autoactivation command
sees that /dev/sda* or /dev/vda* are excluded by system.devices,
either not listed or having a different device id.
|
|
|
|
|
|
| |
Change messages that refer to devices being "excluded by filters"
to say just "excluded". This will avoid mistaking the word
"filters" with the lvm.conf filter setting.
|
|
|
|
|
| |
Remove multipath components.
Add multipath devs that have multipath components listed.
|
|
|
|
|
|
|
|
|
|
|
| |
Warn if a scsi device is listed in the devices file that
is used by a multipath device that is not listed. This
will happen if a scsi device is listed in the devices
file and then an mpath device is set up to use it.
The way to correct this would be to remove the devices
file entry for the component device and add a new entry
for the multipath device.
|
|
|
|
|
|
| |
When thin-pool had queued some delete message on extension operation
such message has been 'lost' and thin-pool kernel metadata has been
left with a thin volume that no longer existed for lvm2 metadata.
|
|
|
|
| |
typo in previous commit
|
|
|
|
|
|
| |
It's more logical to warn about --nolocking in the man page
before it's used rather than after it's used and too late.
Also, warnings are usually for things the user may not know.
|
|
|
|
|
| |
vgchange --monitor y is run during startup when udev is being
initialized and is not yet ready to be used.
|
|
|
|
|
| |
pvscan is used to populate udev info, so it can't expect
to use that udev info.
|
|
|
|
|
| |
warn if writecache neds > 50% of system memory, and
confirm if writecache needs > 90% of system memory.
|
|
|
|
| |
This code is only needed when lvm scans PVs that are stacked on LVs.
|
|
|
|
|
|
| |
The label scan functions where doing some device alias validation
which is now better handled by the dev-cache layer, so just use
that.
|
|
|
|
|
|
|
|
|
|
| |
dev_name(dev) returns "[unknown]" if there are no names
on dev->aliases. It's meant mainly for log messages.
Many places assume a valid path name is returned, and
use it directly. A caller that wants to use the path
from dev_name() must first check if the dev has any
paths with dm_list_empty(&dev->aliases).
|
|
|
|
|
|
|
| |
Use dev_cache_get_existing() in a few common, high level
locations where it's obvious that only existing dev-cache
entries are wanted. This can be expanded and used in more
locations (or dev_cache_get can stop creating new entries.)
|
|
|
|
|
|
|
|
|
|
|
|
| |
along with some basic checks for cases when a device
has no aliases.
lvm itself creates many situations where a struct device
has no valid paths, when it activates and opens an LV,
does something with it, e.g. zeroing, and then closes
and deactivates it. (dev-cache is intended for PVs, and
the use of LVs should be moved out of dev-cache in a
future patch.)
|
|
|
|
|
|
| |
remove unused args, and no callers need or want a
repeated dev_cache_scan if there is no dev from the
lookup.
|
|
|
|
|
| |
lvs was missing the ability to display writecache block size.
now possible with lvs -o writecache_block_size
|
| |
|
|
|
|
| |
to be more consistent with man page description
|
| |
|
|
|
|
|
| |
In some cases we can also use cached info obtained from DM_DEVICE_LIST
also to avoid extra ioctl check for present devices.
|
|
|
|
| |
Oepn count is not used along this code path.
|
|
|
|
|
|
| |
Try to help resolving reported compilation problem with
clang & musl C.
https://github.com/lvmteam/lvm2/issues/61
|
|
|
|
| |
Make clang happier.
|
|
|
|
|
|
|
| |
Different target type for LV it's not an internal error.
i.e. when target type is replaced with 'error' type - it should be
reported as regular warning and not cause interruption of command with
internall error.
|
|
|
|
|
|
|
|
|
| |
With very old version of DM target driver we have to avoid
trying to use newuuid setting - otherwise we get error
during ioctl preparation phase.
Patch is fixing regression from commit:
988ea0e94c79a496f2619eab878fd9db6168711d
|
|
|
|
| |
the /dev/mapper/ paths to test devices don't seem to work there
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In a certain disconnected state, a block device is present on
the system, can be opened, reports a valid size, reports the
correct device id (wwid), and matches a devices file entry.
But, reading the device can still fail. In this case,
device_ids_validate() was misinterpreting the read error as
the device having no data/label on it (and no PVID).
The validate function would then clear the PVID from the
devices file entry for the device, thinking that it was
fixing the devices file (making it consistent with the on disk
state.) Fix this by not attempting to check and correct a
devices file entry that cannot be read. Also make this case
explicit in the hints validation code (which was doing the
right thing but indirectly.)
|
|
|
|
|
|
|
| |
As a result of removing -r from systemd-run in
commit fbd8b0cf43dc67f51f86f060dce748f446985855
this test needs to change how it handles the
transient services.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
When compiled and used with:
CFLAGS="-fsanitize=address -g -O0"
ASAN_OPTIONS=strict_string_checks=1:detect_stack_use_after_return=1:check_initialization_order=1:strict_init_order=1
we have few reported issue - they where not normally spotted, since
we were still accessing our own memory - but ouf of buffer-range.
TODO: there is still something to enhance with handling of #orphan vgids
|
| |
|
| |
|