On Mon, Sep 09, 2019 at 11:42:17AM +0000, Heming Zhao wrote: > Hello David, > > You are right. Without calling _online_pvscan_one(), the pv/vg/lv won't be actived. > The activation jobs will be done by systemd calling lvm2-activation-*.services later. > > Current code, the boot process is mainly blocked by: > ``` > _pvscan_aa > vgchange_activate > _activate_lvs_in_vg > sync_local_dev_names > fs_unlock > dm_udev_wait <=== this point! > ``` Thanks for debugging that. With so many devices, one possibility that comes to mind is this error you would probably have seen: "Limit for the maximum number of semaphores reached" > For fix this boot time regression, it looks lvm2 should have a config item in lvm2.conf > i.e.: large_PV_boot_speedup. > When this item is 1, pvcan won't call _online_pvscan_one, then let lvm2-activation*.service > do the active jobs. > Is it a workable solution? We should look into fixing the udev problems. I don't mind working around udev when it won't do what we need; I'm not sure what the options are in this case. _______________________________________________ linux-lvm mailing list linux-lvm@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/linux-lvm read the LVM HOW-TO at http://tldp.org/HOWTO/LVM-HOWTO/