[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-ppc] [PATCH v3 4/5] xics: directly register ICPState objects t
From: |
Greg Kurz |
Subject: |
Re: [Qemu-ppc] [PATCH v3 4/5] xics: directly register ICPState objects to vmstate |
Date: |
Wed, 7 Jun 2017 22:56:27 +0200 |
On Wed, 7 Jun 2017 20:14:01 +0200
Cédric Le Goater <address@hidden> wrote:
> On 06/07/2017 07:17 PM, Greg Kurz wrote:
> > The ICPState objects are currently registered to vmstate as qdev objects.
> > Their instance ids are hence computed automatically in the migration code,
> > and thus depends on the order the CPU cores were plugged.
> >
> > If the destination had its CPU cores plugged in a different order than the
> > source, then ICPState objects will have different instance_ids and load
> > the wrong state.
> >
> > Since CPU objects have a reliable cpu_index which is already used as
> > instance_id in vmstate, let's use it for ICPState as well.
> >
> > Signed-off-by: Greg Kurz <address@hidden>
> > ---
> > hw/intc/xics.c | 5 ++++-
> > 1 file changed, 4 insertions(+), 1 deletion(-)
> >
> > diff --git a/hw/intc/xics.c b/hw/intc/xics.c
> > index 330441ff7fe8..3d76b43876c5 100644
> > --- a/hw/intc/xics.c
> > +++ b/hw/intc/xics.c
> > @@ -348,10 +348,14 @@ static void icp_realize(DeviceState *dev, Error
> > **errp)
> > }
> >
> > qemu_register_reset(icp_reset, dev);
> > + vmstate_register(NULL, icp->cs->cpu_index, &vmstate_icp_server, icp);
>
> so, what I just said in the previous email regarding ->cs would break this
> patch. Forget about it.
>
Unless we have an icp->cpu_index like I mentioned in the other mail.
>
> Reviewed-by: Cédric Le Goater <address@hidden>
>
> Thanks,
>
> C.
>
> > }
> >
> > static void icp_unrealize(DeviceState *dev, Error **errp)
> > {
> > + ICPState *icp = ICP(dev);
> > +
> > + vmstate_unregister(NULL, &vmstate_icp_server, icp);
> > qemu_unregister_reset(icp_reset, dev);
> > }
> >
> > @@ -359,7 +363,6 @@ static void icp_class_init(ObjectClass *klass, void
> > *data)
> > {
> > DeviceClass *dc = DEVICE_CLASS(klass);
> >
> > - dc->vmsd = &vmstate_icp_server;
> > dc->realize = icp_realize;
> > dc->unrealize = icp_unrealize;
> > }
> >
>
pgpXRqNARo7SX.pgp
Description: OpenPGP digital signature
- Re: [Qemu-ppc] [PATCH v3 3/5] xics: setup cpu at realize time, (continued)
Re: [Qemu-ppc] [PATCH v3 3/5] xics: setup cpu at realize time, David Gibson, 2017/06/07
- Re: [Qemu-ppc] [PATCH v3 3/5] xics: setup cpu at realize time, Greg Kurz, 2017/06/08
- Re: [Qemu-ppc] [PATCH v3 3/5] xics: setup cpu at realize time, Cédric Le Goater, 2017/06/08
- Re: [Qemu-ppc] [PATCH v3 3/5] xics: setup cpu at realize time, David Gibson, 2017/06/08
- Re: [Qemu-ppc] [PATCH v3 3/5] xics: setup cpu at realize time, Greg Kurz, 2017/06/09
- Re: [Qemu-ppc] [PATCH v3 3/5] xics: setup cpu at realize time, David Gibson, 2017/06/09
[Qemu-ppc] [PATCH v3 4/5] xics: directly register ICPState objects to vmstate, Greg Kurz, 2017/06/07
[Qemu-ppc] [PATCH v3 5/5] spapr: fix migration of ICPState objects from/to older QEMU, Greg Kurz, 2017/06/07
- Re: [Qemu-ppc] [PATCH v3 5/5] spapr: fix migration of ICPState objects from/to older QEMU, David Gibson, 2017/06/08
- Re: [Qemu-ppc] [PATCH v3 5/5] spapr: fix migration of ICPState objects from/to older QEMU, Greg Kurz, 2017/06/08
- Re: [Qemu-ppc] [PATCH v3 5/5] spapr: fix migration of ICPState objects from/to older QEMU, David Gibson, 2017/06/12
- Re: [Qemu-ppc] [PATCH v3 5/5] spapr: fix migration of ICPState objects from/to older QEMU, Greg Kurz, 2017/06/13
- Re: [Qemu-ppc] [PATCH v3 5/5] spapr: fix migration of ICPState objects from/to older QEMU, David Gibson, 2017/06/13
- Re: [Qemu-ppc] [PATCH v3 5/5] spapr: fix migration of ICPState objects from/to older QEMU, Greg Kurz, 2017/06/13
- Re: [Qemu-ppc] [PATCH v3 5/5] spapr: fix migration of ICPState objects from/to older QEMU, Dr. David Alan Gilbert, 2017/06/13