Patch 1 fixes ordering of shutdown of the helper daemons
virtlogd/virtlockd.
The rest of the series addresses few issues with locking of disk images
via lockd/sanlock in terms of hotplug to a paused VM.
The patches also prevent combination of automatic disk locking and
blockjobs because it was historically broken and the usage of that is
minimal, we thus just enforce the safe state.
Peter Krempa (14):
qemu: Ensure proper shutdown ordering of virtlockd/virtlogd daemons
qemuDomainAttachLease: Directly insert the lease
Remove virDomainLeaseInsertPreAlloc/virDomainLeaseInsertPreAlloced
qemu.conf: Explain that no locking happens if 'lock_manager' is unset
virDomainLeaseDefParseXML: Report error if '<lockspace>' element is
missing
virDomainLeaseDefParseXML: Avoid unneeded temporary variables
qemuxmlconftest: Add <lease> with missing offset
locking: Debug lockspace creation
lock_daemon: Log arguments for all dispatched APIs
lockd driver: Allow registering additional lockspaces for manual
<lease>s
qemu: hotplug: Don't acquire lock on hotplugged <lease> when VM is
paused
locking: Add API to query whether automatic disk leases are enabled
qemu: Refuse block jobs if automatic disk leases are enabled in the
locking plugin
qemu: Fix lock manager usage for disks
src/conf/domain_conf.c | 38 ++++---------
src/conf/domain_conf.h | 4 +-
src/libvirt_private.syms | 3 +-
src/locking/libvirt_lockd.aug | 8 +++
src/locking/lock_daemon.c | 3 +
src/locking/lock_daemon_dispatch.c | 24 +++++++-
src/locking/lock_driver.h | 10 ++++
src/locking/lock_driver_lockd.c | 22 ++++++++
src/locking/lock_driver_sanlock.c | 9 +++
src/locking/lock_manager.c | 10 ++++
src/locking/lock_manager.h | 2 +
src/locking/lockd.conf | 14 +++++
src/locking/sanlock.conf | 4 ++
src/locking/test_libvirt_lockd.aug.in | 4 ++
src/qemu/qemu.conf.in | 5 ++
src/qemu/qemu_backup.c | 2 +-
src/qemu/qemu_block.c | 2 +-
src/qemu/qemu_checkpoint.c | 2 +-
src/qemu/qemu_domain.c | 21 +++----
src/qemu/qemu_domain.h | 3 +-
src/qemu/qemu_driver.c | 4 +-
src/qemu/qemu_hotplug.c | 56 +++++++++++++++----
src/qemu/qemu_snapshot.c | 25 +++++----
src/qemu/virtqemud.service.extra.in | 4 ++
src/remote/libvirtd.service.in | 4 ++
src/util/virlockspace.c | 6 +-
tests/qemuxmlconfdata/lease.x86_64-latest.xml | 5 ++
tests/qemuxmlconfdata/lease.xml | 5 ++
28 files changed, 221 insertions(+), 78 deletions(-)
--
2.54.0