ping

On Fri 29 Jun 2018 01:36:58 PM CEST, Alberto Garcia wrote:
> Hi everyone,
>
> this is part of the blockdev-reopen work that I'm doing, but since
> I'll be away during most of July I thought that I could send already a
> couple of patches that I think are ready and don't need anything else
> from the rest of the series.
>
> There's two main fixes here:
>
>   1) bs->options are not kept up to date after an image is reopened
>      and no longer reflect its state.
>
>   2) bs->options and bs->explicit_options also contain the options of
>      a BDS's children, so there's data that is duplicated and will be
>      inconsistent as soon as you change the children's options
>      directly.
>
> The fix for (2) involves removing all children options from both
> QDicts. In the cases of node name references ("backing": "node-name")
> those remain in the QDict (they're technically parent options). I
> think we don't really need them and it should be possible to get rid
> of them, but it's a little more complicated (we need them during
> bdrv_reopen() to ensure that the user didn't try to change any of
> them).
>
> Regards,
>
> Berto
>
> Alberto Garcia (5):
>   qdict: Make qdict_extract_subqdict() accept dst = NULL
>   block: Remove children options from bs->{options,explicit_options}
>   block: Simplify bdrv_reopen_abort()
>   block: Update bs->options if bdrv_reopen() succeeds
>   block: Simplify append_open_options()
>
>  block.c               | 42 +++++++++++++++++++++++++++++++-----------
>  qobject/block-qdict.c | 11 ++++++++---
>  2 files changed, 39 insertions(+), 14 deletions(-)
>
> -- 
> 2.11.0

Reply via email to