mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-01-04 03:55:20 +00:00
96a02703da
It may take some time for sanlock to add a lockspace. And if user restart libvirtd service meanwhile, the fresh daemon can fail adding the same lockspace with EINPROGRESS. Recent sanlock has sanlock_inq_lockspace() function which should block until lockspace changes state. If we are building against older sanlock we should retry a few times before claiming an error. This issue can be easily reproduced: for i in {1..1000} ; do echo $i; service libvirtd restart; sleep 2; done 20 Stopping libvirtd daemon: [FAILED] Starting libvirtd daemon: [ OK ] 21 Stopping libvirtd daemon: [ OK ] Starting libvirtd daemon: [ OK ] 22 Stopping libvirtd daemon: [ OK ] Starting libvirtd daemon: [ OK ] error : virLockManagerSanlockSetupLockspace:334 : Unable to add lockspace /var/lib/libvirt/sanlock/__LIBVIRT__DISKS__: Operation now in progress |
||
---|---|---|
.. | ||
domain_lock.c | ||
domain_lock.h | ||
libvirt_sanlock.aug | ||
lock_driver_nop.c | ||
lock_driver_nop.h | ||
lock_driver_sanlock.c | ||
lock_driver.h | ||
lock_manager.c | ||
lock_manager.h | ||
sanlock_helper.c | ||
sanlock.conf | ||
test_libvirt_sanlock.aug.in |