Since the source is already translated before. This just adds the checking. Move !disk->shared and !disk->src to improve the performance a bit. --- src/qemu/qemu_conf.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/qemu/qemu_conf.c b/src/qemu/qemu_conf.c index 8ae690f..c7b8045 100644 --- a/src/qemu/qemu_conf.c +++ b/src/qemu/qemu_conf.c @@ -1113,8 +1113,12 @@ qemuAddSharedDisk(virQEMUDriverPtr driver, * for the shared disk is "sgio" setting, which is only * valid for block disk. */ - if (disk->type != VIR_DOMAIN_DISK_TYPE_BLOCK || - !disk->shared || !disk->src) + if (!disk->shared || + !disk->src || + (disk->type != VIR_DOMAIN_DISK_TYPE_BLOCK && + !(disk->type == VIR_DOMAIN_DISK_TYPE_VOLUME && + disk->srcpool && + disk->srcpool->voltype == VIR_STORAGE_VOL_BLOCK))) return 0; qemuDriverLock(driver); @@ -1189,8 +1193,12 @@ qemuRemoveSharedDisk(virQEMUDriverPtr driver, int ret = -1; int idx; - if (disk->type != VIR_DOMAIN_DISK_TYPE_BLOCK || - !disk->shared || !disk->src) + if (!disk->shared || + !disk->src || + (disk->type != VIR_DOMAIN_DISK_TYPE_BLOCK && + !(disk->type == VIR_DOMAIN_DISK_TYPE_VOLUME && + disk->srcpool && + disk->srcpool->voltype == VIR_STORAGE_VOL_BLOCK))) return 0; qemuDriverLock(driver); -- 1.8.1.4 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list