[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] docs/migration: Clarify pre_load in subsections
From: |
Juan Quintela |
Subject: |
Re: [Qemu-devel] [PATCH] docs/migration: Clarify pre_load in subsections |
Date: |
Wed, 08 Aug 2018 10:34:50 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) |
"Dr. David Alan Gilbert (git)" <address@hidden> wrote:
> From: "Dr. David Alan Gilbert" <address@hidden>
>
> Clarify that the pre_load function in a subsection is only called if
> the subsection is found; to handle a missing subsection you may
> set values in the pre_load of the parent vmsd.
>
> Signed-off-by: Dr. David Alan Gilbert <address@hidden>
Reviewed-by: Juan Quintela <address@hidden>
> ---
> docs/devel/migration.rst | 15 +++++++++------
> 1 file changed, 9 insertions(+), 6 deletions(-)
>
> diff --git a/docs/devel/migration.rst b/docs/devel/migration.rst
> index 6ed3fce061..687570754d 100644
> --- a/docs/devel/migration.rst
> +++ b/docs/devel/migration.rst
> @@ -240,10 +240,13 @@ should succeed even with the data missing. To support
> this the
> subsection can be connected to a device property and from there
> to a versioned machine type.
>
> -One important note is that the post_load() function is called "after"
> -loading all subsections, because a newer subsection could change same
> -value that it uses. A flag, and the combination of pre_load and post_load
> -can be used to detect whether a subsection was loaded, and to
> +The 'pre_load' and 'post_load' functions on subsections are only
> +called if the subsection is loaded.
> +
> +One important note is that the outer post_load() function is called "after"
> +loading all subsections, because a newer subsection could change the same
> +value that it uses. A flag, and the combination of outer pre_load and
> +post_load can be used to detect whether a subsection was loaded, and to
> fall back on default behaviour when the subsection isn't present.
>
> Example:
> @@ -315,8 +318,8 @@ For example:
> the property to false.
> c) Add a static bool support_foo function that tests the property.
> d) Add a subsection with a .needed set to the support_foo function
> - e) (potentially) Add a pre_load that sets up a default value for 'foo'
> - to be used if the subsection isn't loaded.
> + e) (potentially) Add an outer pre_load that sets up a default value
> + for 'foo' to be used if the subsection isn't loaded.
>
> Now that subsection will not be generated when using an older
> machine type and the migration stream will be accepted by older