1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-12-21 13:34:40 +03:00
lvm2/lib/device
David Teigland 9048565093 devices: rework libudev usage
related to config settings:
  obtain_device_info_from_udev (controls if lvm gets
    a list of devices from readdir /dev or from libudev)
  external_device_info_source (controls if lvm asks
    libudev for device information)

. Make the obtain_device_list_from_udev setting
  affect only the choice of readdir /dev vs libudev.
  The setting no longer controls if udev is used for
  device type checks.

. Change obtain_device_list_from_udev default to 0.
  This helps avoid boot timeouts due to slow libudev
  queries, avoids reported failures from
  udev_enumerate_scan_devices, and avoids delays from
  "device not initialized in udev database" errors.
  Even without errors, for a system booting with 1024 PVs,
  lvm2-pvscan times improve from about 100 sec to 15 sec,
  and the pvscan command from about 64 sec to about 4 sec.

. For external_device_info_source="none", remove all
  libudev device info queries, and use only lvm
  native device info.

. For external_device_info_source="udev", first check
  lvm native device info, then check libudev info.

. Remove sleep/retry loop when attempting libudev
  queries for device info.  udev info will simply
  be skipped if it's not immediately available.

. Only set up a libdev connection if it will be used by
  obtain_device_list_from_udev/external_device_info_source.

. For native multipath component detection, use
  /etc/multipath/wwids.  If a device has a wwid
  matching an entry in the wwids file, then it's
  considered a multipath component.  This is
  necessary to natively detect multipath
  components when the mpath device is not set up.
2021-07-13 11:11:23 -05:00
..
bcache-utils.c bcache: use indirection table for fd 2020-09-18 15:10:11 -05:00
bcache.c cov: void unused result 2021-03-15 11:13:24 +01:00
bcache.h bcache: use indirection table for fd 2020-09-18 15:10:11 -05:00
dev-cache.c skip indexing devices used by LVs in more commands 2021-07-09 13:59:31 -05:00
dev-cache.h skip indexing devices used by LVs in more commands 2021-07-09 13:59:31 -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 cov: mask uninitialized value 2021-03-10 01:34:27 +01: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 devices: rework libudev usage 2021-07-13 11:11:23 -05:00
dev-swap.c devices: rework libudev usage 2021-07-13 11:11:23 -05:00
dev-type.c devices: rework libudev usage 2021-07-13 11:11:23 -05:00
dev-type.h devices: rework libudev usage 2021-07-13 11:11:23 -05:00
device_id.c devices: rework libudev usage 2021-07-13 11:11:23 -05:00
device_id.h devices: rework libudev usage 2021-07-13 11:11:23 -05:00
device-types.h devices: Recognise Veritas Dynamic Multipathing 2017-01-10 22:23:23 +00:00
device.h devices: rework libudev usage 2021-07-13 11:11:23 -05:00