On 11/29/2016 07:18 PM, Max Reitz wrote:
> If the backing file is overridden, this most probably does change the
> guest-visible data of a BDS. Therefore, we will need to consider this in
> bdrv_refresh_filename().
> 
> Adding a new field to the BDS is not nice, but it is very simple and
> exactly keeps track of whether the backing file has been overridden.
> 
> This commit adds a FIXME which will be remedied by a follow-up commit.
> Until then, the respective piece of code will not result in any behavior
> that is worse than what we currently have.
> 
> Signed-off-by: Max Reitz <mre...@redhat.com>
> ---

> +++ b/include/block/block_int.h
> @@ -461,6 +461,7 @@ struct BlockDriverState {
>      char backing_file[PATH_MAX]; /* if non zero, the image is a diff of
>                                      this file image */
>      char backing_format[16]; /* if non-zero and backing_file exists */
> +    bool backing_overridden; /* backing file has been specified by the user 
> */

Should we group all of the bool in this struct so as to reduce its size
and improve cache locality?  But it's already clunky, so that may be
appropriate as a separate patch.

Reviewed-by: Eric Blake <ebl...@redhat.com>

-- 
Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to