qemu-block
[Top][All Lists]
Advanced

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

Re: [Qemu-block] [PATCH v7 for-2.12 05/25] block: Respect backing bs in


From: Alberto Garcia
Subject: Re: [Qemu-block] [PATCH v7 for-2.12 05/25] block: Respect backing bs in bdrv_refresh_filename
Date: Tue, 05 Dec 2017 14:27:20 +0100
User-agent: Notmuch/0.18.2 (http://notmuchmail.org) Emacs/24.4.1 (i586-pc-linux-gnu)

On Mon 20 Nov 2017 09:09:44 PM CET, Max Reitz wrote:
> @@ -5016,6 +5016,7 @@ void bdrv_refresh_filename(BlockDriverState *bs)
>  
>          opts = qdict_new();
>          has_open_options = append_open_options(opts, bs);
> +        has_open_options |= bs->backing_overridden;
>  
>          /* If no specific options have been given for this BDS, the filename 
> of
>           * the underlying file should suffice for this one as well */
> @@ -5027,11 +5028,20 @@ void bdrv_refresh_filename(BlockDriverState *bs)
>           * file BDS. The full options QDict of that file BDS should somehow
>           * contain a representation of the filename, therefore the following
>           * suffices without querying the (exact_)filename of this BDS. */
> -        if (bs->file->bs->full_open_options) {
> +        if (bs->file->bs->full_open_options &&
> +            (!bs->backing || bs->backing->bs->full_open_options))
> +        {

Does this mean that both file. and backing. have to be overriden?

Shouldn't that be a || instead of a && ??

>              qdict_put_str(opts, "driver", drv->format_name);
>              QINCREF(bs->file->bs->full_open_options);
>              qdict_put(opts, "file", bs->file->bs->full_open_options);
>  
> +            if (bs->backing) {
> +                QINCREF(bs->backing->bs->full_open_options);
> +                qdict_put(opts, "backing", 
> bs->backing->bs->full_open_options);
> +            } else if (bs->backing_overridden && !bs->backing) {
> +                qdict_put(opts, "backing", qstring_new());
> +            }

You don't need the !bs->backing in the second if, it's implied from the
previous one.

Berto



reply via email to

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