On 07/10/2017 08:50 AM, Kevin Wolf wrote:

> We have regretted enough things that were defined a bit sloppily just
> for convenience that I'd rather not make this mistake again when we can
> avoid it.

Agreed.  Another consideration: defining redundant information is
trickier to maintain because correct implementations have to check that
both points are consistent with one another.

> 
>>>> +         17 - 19:  Reserved for future use, must be zero.
>>> We don't need this for now because byte 16 will be the final one in this
>>> struct.
>>>
>>>> +         20 - 23:  extra_data_size
>>>> +                   Size of compress format specific extra data.
>>>> +                   For now, as no format specifies extra data,
>>>> +                   extra_data_size is reserved and should be zero.
>>>> +
>>>> +        variable:  extra_data
>>>> +                   Extra data with additional parameters for the compress
>>>> +                   format, occupying extra_data_size bytes.
>>> extra_data_size isn't necessary because we already have the length of
>>> the header extension, so we know how long the whole thing is.
>>> extra_data isn't necessary because we'll just add new fields at the end
>>> if we want to add something.
>>
>> I was asked to add it altough it is redundant.
> 
> Who asked this, and did they have a good reason for it?

May have been me, or may have been implied by my comments, but I agree
that the overall extension header covers this, so we don't need a
redundant form.  So as long as the overall extension header length is
good enough, I'm okay avoiding redundancies.

-- 
Eric Blake, Principal Software Engineer
Red Hat, Inc.           +1-919-301-3266
Virtualization:  qemu.org | libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to