On 04/04/2013 03:38 PM, Osier Yang wrote: > 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(-) > ACK, although my eyes hurt thinking about all those nots and ors to with an and... John > 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); > -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list