mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-24 22:55:23 +00:00
qemu: domain: Reject copy_on_read for read-only disks
The sectors read from the backing image need to be written to the top level image. If a disk is marked read-only the image can't be written. QEMU handled that by disabling copy_on_read and reporting a warning: -drive file=/var/lib/libvirt/images/c,format=qcow2,if=none, id=drive-scsi0-0-1,readonly=on,copy-on-read=on: warning: disabling copy-on-read on read-only drive Signed-off-by: Peter Krempa <pkrempa@redhat.com> Reviewed-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
parent
9ac3ea5cf8
commit
d7eeafaa4c
@ -4650,6 +4650,13 @@ qemuDomainDeviceDefValidateDisk(const virDomainDiskDef *disk,
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (disk->src->readonly && disk->copy_on_read == VIR_TRISTATE_SWITCH_ON) {
|
||||||
|
virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
|
||||||
|
_("copy_on_read is not compatible with read-only disk '%s'"),
|
||||||
|
disk->dst);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
if (disk->geometry.cylinders > 0 &&
|
if (disk->geometry.cylinders > 0 &&
|
||||||
disk->geometry.heads > 0 &&
|
disk->geometry.heads > 0 &&
|
||||||
disk->geometry.sectors > 0) {
|
disk->geometry.sectors > 0) {
|
||||||
|
Loading…
Reference in New Issue
Block a user