]> git.proxmox.com Git - mirror_qemu.git/commit - block.c
block: don't add 'driver' to options when referring to backing via node name
authorPeter Krempa <pkrempa@redhat.com>
Thu, 12 Oct 2017 14:14:10 +0000 (16:14 +0200)
committerKevin Wolf <kwolf@redhat.com>
Thu, 26 Oct 2017 12:45:57 +0000 (14:45 +0200)
commit6bff597bf6580ecc691258e849f652911dbdda7c
treefb57fc5dd105c05aced9d0f54a71558c5c769a62
parentae49fbbcd8e4e9d8bf7131add34773f579e1aff7
block: don't add 'driver' to options when referring to backing via node name

When referring to a backing file of an image via node name
bdrv_open_backing_file would add the 'driver' option to the option list
filling it with the backing format driver. This breaks construction of
the backing chain via -blockdev, as bdrv_open_inherit reports an error
if both 'reference' and 'options' are provided.

$ qemu-img create -f raw /tmp/backing.raw 64M
$ qemu-img create -f qcow2 -F raw -b /tmp/backing.raw /tmp/test.qcow2
$ qemu-system-x86_64 \
  -blockdev driver=file,filename=/tmp/backing.raw,node-name=backing \
  -blockdev driver=qcow2,file.driver=file,file.filename=/tmp/test.qcow2,node-name=root,backing=backing
qemu-system-x86_64: -blockdev driver=qcow2,file.driver=file,file.filename=/tmp/test.qcow2,node-name=root,backing=backing: Could not open backing file: Cannot reference an existing block device with additional options or a new filename

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
block.c