On 10/13/2012 03:59 PM, Eric Blake wrote: > When an image has no backing file, using VIR_STORAGE_FILE_AUTO > for its type is a bit confusing. Additionally, a future patch > would like to reserve a default value for the case of no file > type specified in the XML, but different from the current use > of -1 to imply probing, since probing is not always safe. > > Also, a couple of file types were missing compared to supported > code: libxl supports 'vhd', and qemu supports 'fat' for directories > passed through as a file system. > > +++ b/src/util/storage_file.c > @@ -335,8 +351,12 @@ qcowXGetBackingStore(char **res, > * between the end of the header (QCOW2_HDR_TOTAL_SIZE) > * and the start of the backingStoreName (offset) > */ > - if (isQCow2 && format) > - qcow2GetBackingStoreFormat(format, buf, buf_size, QCOW2_HDR_TOTAL_SIZE, offset); > + if (isQCow2 && format) { > + qcow2GetBackingStoreFormat(format, buf, buf_size, QCOW2_HDR_TOTAL_SIZE, > + offset); > + if (*format <= VIR_STORAGE_FILE_NONE) > + return BACKING_STORE_INVALID; > + } This breaks the case where a qcow2 file has a backing file but did not specify a format, and libvirt is set to allow probing (for example, if you use 'qemu-img rebase -u -b blah file' without '-F format'). I'm working on a fix. -- Eric Blake eblake@xxxxxxxxxx +1-919-301-3266 Libvirt virtualization library http://libvirt.org
Attachment:
signature.asc
Description: OpenPGP digital signature
-- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list