[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-arm] [PATCH 1/3] hw/intc/arm_gicv3_common: Give no-migration-s
From: |
Dr. David Alan Gilbert |
Subject: |
Re: [Qemu-arm] [PATCH 1/3] hw/intc/arm_gicv3_common: Give no-migration-shift-bug subsection a needed function |
Date: |
Fri, 3 Aug 2018 18:29:36 +0100 |
User-agent: |
Mutt/1.10.0 (2018-05-17) |
* Peter Maydell (address@hidden) wrote:
> Currently the migration code incorrectly treats a subsection with
> no .needed function pointer as if it was the subsection list
> terminator -- it is ignored and so is everything after it.
> Work around this by giving vmstate_gicv3_gicd_no_migration_shift_bug
> a 'needed' function that always returns true.
>
> Signed-off-by: Peter Maydell <address@hidden>
Reviewed-by: Dr. David Alan Gilbert <address@hidden>
> ---
> This should go into 3.0 to avoid awkward migration compat problems:
> the no-migration-shift-bug subsection is new in 3.0.
> ---
> hw/intc/arm_gicv3_common.c | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/hw/intc/arm_gicv3_common.c b/hw/intc/arm_gicv3_common.c
> index ff326b374ad..e58bc8b8105 100644
> --- a/hw/intc/arm_gicv3_common.c
> +++ b/hw/intc/arm_gicv3_common.c
> @@ -203,10 +203,16 @@ static int
> gicv3_gicd_no_migration_shift_bug_post_load(void *opaque,
> return 0;
> }
>
> +static bool needed_always(void *opaque)
> +{
> + return true;
> +}
> +
> const VMStateDescription vmstate_gicv3_gicd_no_migration_shift_bug = {
> .name = "arm_gicv3/gicd_no_migration_shift_bug",
> .version_id = 1,
> .minimum_version_id = 1,
> + .needed = needed_always,
> .pre_load = gicv3_gicd_no_migration_shift_bug_pre_load,
> .post_load = gicv3_gicd_no_migration_shift_bug_post_load,
> .fields = (VMStateField[]) {
> --
> 2.17.1
>
--
Dr. David Alan Gilbert / address@hidden / Manchester, UK