The correct way to query whether file locking is supported is 'query-
qmp-schema', which will expose the 'locking' option for the 'file'
branch of the 'blockdev-add' command then.

As a first comment, in your setup, completely disabling file locking is
probably a too big hammer. It is preferable to just allow multiple
writers on the same image by setting share-rw=on for the block device
(e.g. '-device virtio-blk-pci,drive=foo,share-rw=on'). This will allow
all guest devices to share the same image, but will still protect the
image against other users like an incorrect qemu-img invocation while
the VM is running.

However, note that opening the same image file twice is not the best
approach to the problem anyway. This happens to work with raw images
(except for the locking), but it would cause corruption for any other
image format.

The better solution (though it may require more changes to your
management application) is to open the image once and assign a node-name
to it, and then let two guest devices point to the same node. Like
above, this requires that share-rw=on be set for guest devices, but it
will also work with non-raw image formats because the image file is now
opened only once and the sharing is done internally in qemu.

An example command line fragment might look like this:

  -blockdev node-name=disk,driver=file,filename=hd.img
  -device virtio-blk,drive=disk,share-rw=on
  -device virtio-blk,drive=disk,share-rw=on

Technically, you can also keep using -drive instead of -blockdev, but it
will result in a mixed state of modern node-name based block device
management and the traditional drive based configuration, which might be
confusing at times.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1716028

Title:
  qemu 2.10 locks images with no feature flag

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1716028/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to