qemu-block
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v2 03/12] block/vmdk: Change extent info type


From: Hanna Czenczek
Subject: Re: [PATCH v2 03/12] block/vmdk: Change extent info type
Date: Fri, 20 Jan 2023 14:43:19 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.11.0

On 19.01.23 16:20, Kevin Wolf wrote:
Am 20.06.2022 um 18:26 hat Hanna Reitz geschrieben:
VMDK's implementation of .bdrv_get_specific_info() returns information
about its extent files, ostensibly in the form of ImageInfo objects.
However, it does not get this information through
bdrv_query_image_info(), but fills only a select few fields with custom
information that does not always match the fields' purposes.

For example, @format, which is supposed to be a block driver name, is
filled with the extent type, e.g. SPARSE or FLAT.

In ImageInfo, @compressed shows whether the data that can be seen in the
image is stored in compressed form or not.  For example, a compressed
qcow2 image will store compressed data in its data file, but when
accessing the qcow2 node, you will see normal data.  This is not how
VMDK uses the @compressed field for its extent files: Instead, it
signifies whether accessing the extent file will yield compressed data
(which the VMDK driver then (de-)compresses).
Actually, VMDK was the only user of the field in ImageInfo. qcow2
doesn't set the field at all because it would have to parse all L2
tables in order to set it.

Right, makes sense.

So I suppose @compressed can now be removed from ImageInfo?

I think so.  Looks like it was indeed introduced specifically for VMDK’s extent 
information (cbe82d7fb32, f4c129a38a5) so that ImageInfo could be used there, 
which this patch here changes.  So we should probably indeed remove the field – 
it did lead me to naïvely believe that it would have a meaning on images that 
actually support compression (like qcow2) after all.

Hanna




reply via email to

[Prev in Thread] Current Thread [Next in Thread]