[libvirt] [PATCH] qemu: turn on virtlockd by default

Kashyap Chamarthy kchamart at redhat.com
Fri Jan 22 19:35:48 UTC 2016


On Fri, Jan 22, 2016 at 03:56:08PM +0000, Daniel P. Berrange wrote:
> We have had virtlockd available for a long time now but
> have always defaulted to the 'nop' lock driver which does
> no locking. This gives users an unsafe deployment by
> default unless they know to turn on lockd. virtlockd will
> auto-activate via systemd when guests launch, so setting
> it on by default will only cause upgrade pain for people
> on non-systemd distros.

I tried to test this patch in the below way after applying to my local
Git master, and my test seems to fail.

Compile and `virtlockd` setup
-----------------------------

After applying the patch, I'm here:

    $ git describe
    v1.3.1-34-gd3a39cd

Compile:

    $ cd ~/build/libvirt
    $ ~/src/libvirt/./autgen.sh --system && make -j8

Stop the system libvirtd and virtlockd:

    $ systemctl stop libvirtd
    $ systemctl stop virtlockd

Enable `virtlockd` for the QEMU driver:

    $ augtool -s  set /files/etc/libvirt/qemu.conf/lock_manager lockd

Invoke just compiled virtlockd and libvirtd (in that order):

    $ sudo ./run src/virtlockd &
    $ sudo ./run daemon/libvirtd &

Test
----

Purposefully make two libvirt VMs point to the same disk image:

    $ sudo ./run tools/virsh dumpxml cvm1 | grep 'source file'
          <source file='/var/lib/libvirt/images/cirros-0.3.3-x86_64-disk.img'/>
    $ sudo ./run tools/virsh dumpxml cvm2 | grep 'source file'
          <source file='/var/lib/libvirt/images/cirros-0.3.3-x86_64-disk.img'/>

Start the first VM (with `virsh` from the build dir), it fails:

    $ sudo ./run tools/virsh start cvm1
    error: Failed to start domain cvm1
    error: Failed to connect socket to '/var/run/libvirt/virtlogd-sock': No such file or directory

However, the virtlogd-sock file exists in the said path:

    $ ls -lsrt /var/run/libvirt/virtlockd-sock                                                                                                             
    0 srwx------. 1 root root 0 Jan 22 19:49 /var/run/libvirt/virtlockd-sock
 
What else am I missing?

-- 
/kashyap




More information about the libvir-list mailing list