1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-12-21 13:34:40 +03:00
lvm2/lib/device
David Teigland 62533ae3fa vgchange -aay: optimize device list using pvs_online files
Port another optimization from pvscan -aay to vgchange -aay:
  "pvscan: only add device args to dev cache"

This optimization avoids doing a full dev_cache_scan, and
instead populates dev-cache with only the devices in the
VG being activated.

This involves shifting the use of pvs_online files from
the hints interface up to the higher level label_scan
interface.  This specialized label_scan is structured
around creating a list of devices from the pvs_online
files.  Previously, a list of all devices was created
first, and then reduced based on the pvs_online files.
The initial step of listing all devices was slow when
thousands of devices are present on the system.

This optimization extends the previous optimization that
used pvs_online files to limit the devices that were
actually scanned (i.e. reading to identify the device):
  "vgchange -aay: optimize device scan using pvs_online files"
2021-11-05 12:19:35 -05:00
..
bcache-utils.c cov: ensure data is not derefenced 2021-09-20 14:26:09 +02:00
bcache.c cov: mask some warning about leakage 2021-09-20 14:26:09 +02:00
bcache.h bcache: use indirection table for fd 2020-09-18 15:10:11 -05:00
dev-cache.c vgchange -aay: optimize device list using pvs_online files 2021-11-05 12:19:35 -05:00
dev-cache.h vgchange -aay: optimize device list using pvs_online files 2021-11-05 12:19:35 -05:00
dev-dasd.c cov: mask uninitialized value 2021-03-10 01:34:27 +01:00
dev-ext-udev-constants.h dev-type: check for DEVLINKS udev db variable existence if udev_device_get_is_initialized fn is not present 2016-09-06 13:21:29 +02:00
dev-ext.c build: Don't generate symlinks in include/ dir 2018-05-14 10:30:20 +01:00
dev-io.c make: opened can be needed for either defines case 2021-09-27 18:56:14 +02:00
dev-luks.c devices: rework libudev usage 2021-07-13 11:11:23 -05:00
dev-lvm1-pool.c build: Don't generate symlinks in include/ dir 2018-05-14 10:30:20 +01:00
dev-md.c devices: rework libudev usage 2021-07-13 11:11:23 -05:00
dev-mpath.c cov: dev-mpath: check config_wwids_file 2021-07-28 00:49:28 +02:00
dev-swap.c devices: rework libudev usage 2021-07-13 11:11:23 -05:00
dev-type.c cov: add initilizer 2021-07-28 00:49:28 +02:00
dev-type.h devices: rework libudev usage 2021-07-13 11:11:23 -05:00
device_id.c rename pvscan_cache_single to expect_missing_vg_device in cmd 2021-11-04 11:08:38 -05:00
device_id.h pvscan: only add device args to dev cache 2021-10-19 17:13:57 -05:00
device-types.h devices: Recognise Veritas Dynamic Multipathing 2017-01-10 22:23:23 +00:00
device.h toollib: remove all devices list from process_each_pv 2021-10-13 17:29:32 -05:00
online.c vgchange -aay: optimize device list using pvs_online files 2021-11-05 12:19:35 -05:00
online.h vgchange -aay: optimize device list using pvs_online files 2021-11-05 12:19:35 -05:00