qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [Qemu-ppc] [PATCH] spapr: skip configuration section du


From: Dr. David Alan Gilbert
Subject: Re: [Qemu-devel] [Qemu-ppc] [PATCH] spapr: skip configuration section during migration of older machines
Date: Thu, 11 Feb 2016 16:53:40 +0000
User-agent: Mutt/1.5.24 (2015-08-30)

* Greg Kurz (address@hidden) wrote:
> On Mon, 08 Feb 2016 16:59:47 +0100
> Greg Kurz <address@hidden> wrote:
> > Since QEMU 2.4, we have a configuration section in the migration stream.
> > This must be skipped for older machines, like it is already done for x86.
> > 
> 
> Ouch ! It is more complex than I thought... the migration of pseries-2.3
> machine is already broken between QEMU-2.3 and QEMU-2.4. So this patch
> fixes indeed migration of a pseries-2.3 machine from QEMU-2.3, but it
> breaks migration of the same machine from QEMU-2.4 and up.
> 
> Not sure how to deal with that... is it reasonable to assume that
> pseries-2.3 running with QEMU-2.3 is the common case ? If so, this
> patch would bring more help than harm.

Unfortunately we can not fix history, so we have to pick something to fix.
So unless there is another reason, then I normally say keep it working
between the latest versions of qemu; i.e. if someone is running qemu 2.5 with
-M 2.3  then dont break it when they try and migrate to 2.6, even though
this would fix an older qemu migrating into 2.6.

However, as discussed on irc you might be able to fudge it; for example
using qemu_peek_byte to test whether or not you have a configuration
section, and making it not error for some machine types.   This isn't
pretty, but if it's important for you to get the coniguration working
then it's the type of trick that might work.

Dave

> 
> > Fixes: 61964c23e5ddd5a33f15699e45ce126f879e3e33
> > Cc: address@hidden
> > Signed-off-by: Greg Kurz <address@hidden>
> > ---
> >  hw/ppc/spapr.c |    1 +
> >  1 file changed, 1 insertion(+)
> > 
> > diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
> > index 5bd8fd3ef842..bca7cb8a5d27 100644
> > --- a/hw/ppc/spapr.c
> > +++ b/hw/ppc/spapr.c
> > @@ -2446,6 +2446,7 @@ static void 
> > spapr_machine_2_3_instance_options(MachineState *machine)
> >      spapr_machine_2_4_instance_options(machine);
> >      savevm_skip_section_footers();
> >      global_state_set_optional();
> > +    savevm_skip_configuration();
> >  }
> > 
> >  static void spapr_machine_2_3_class_options(MachineClass *mc)
> > 
> > 
> 
--
Dr. David Alan Gilbert / address@hidden / Manchester, UK



reply via email to

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