[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v3 2/2] Xen: Use the ioreq-server API when avail
From: |
Paul Durrant |
Subject: |
Re: [Qemu-devel] [PATCH v3 2/2] Xen: Use the ioreq-server API when available |
Date: |
Thu, 16 Oct 2014 10:25:05 +0000 |
> -----Original Message-----
> From: Paul Durrant
> Sent: 16 October 2014 11:17
> To: 'Paolo Bonzini'; Peter Maydell
> Cc: QEMU Developers; address@hidden; Stefano Stabellini;
> Michael Tokarev; Stefan Hajnoczi; Stefan Weil; Olaf Hering; Gerd Hoffmann;
> Alexey Kardashevskiy; Alexander Graf
> Subject: RE: [PATCH v3 2/2] Xen: Use the ioreq-server API when available
>
> > -----Original Message-----
> > From: Paolo Bonzini [mailto:address@hidden
> > Sent: 16 October 2014 11:10
> > To: Paul Durrant; Peter Maydell
> > Cc: QEMU Developers; address@hidden; Stefano Stabellini;
> > Michael Tokarev; Stefan Hajnoczi; Stefan Weil; Olaf Hering; Gerd
> Hoffmann;
> > Alexey Kardashevskiy; Alexander Graf
> > Subject: Re: [PATCH v3 2/2] Xen: Use the ioreq-server API when available
> >
> > Il 16/10/2014 10:25, Paul Durrant ha scritto:
> > >>> +static void xen_hvm_pre_save(void *opaque)
> > >>> +{
> > >>> + XenIOState *state = opaque;
> > >>> +
> > >>> + /* Stop servicing emulation requests */
> > >>> + xen_set_ioreq_server_state(xen_xc, xen_domid, state->ioservid,
> > 0);
> > >>> + xen_destroy_ioreq_server(xen_xc, xen_domid, state->ioservid);
> > >>> +}
> > >>
> > >> Is the new use of vmstate_register() really necessary?
> > >> Usually the state you're saving corresponds to some QOM
> > >> device whose vmsd field you can use instead.
> > >
> > > In this case, it seems like a job for a vmstate change handler.
> > >
> > > I looked at that but it did not seem to give me the right semantic,
> > > whereas the pre-save callback gave me exactly the right semantic.
> >
> > What exactly is the right semantics? Note that save _can_ fail, so you
> > need the ability to roll back to the source machine. I think this is
> > missing from your patch, and there is no post_save hook that you can use.
> >
>
> I need something that will be called prior to the VM memory image being
> saved, but if save can fail I will also need something to be called if that
> occurs
> too.
Tracing this back through the many layers it looks like a state change notifier
may work after all as qmp_xen_save_devices_state() does calls vm_stop() with
RUN_STATE_SAVE_VM before calling qemu_save_device_state(). I'll check again.
Paul
>
> Paul
>
> > Paolo
Re: [Qemu-devel] [PATCH v3 2/2] Xen: Use the ioreq-server API when available, Peter Maydell, 2014/10/15
- Re: [Qemu-devel] [PATCH v3 2/2] Xen: Use the ioreq-server API when available, Paolo Bonzini, 2014/10/16
- Re: [Qemu-devel] [PATCH v3 2/2] Xen: Use the ioreq-server API when available, Paul Durrant, 2014/10/16
- Re: [Qemu-devel] [PATCH v3 2/2] Xen: Use the ioreq-server API when available, Paolo Bonzini, 2014/10/16
- Re: [Qemu-devel] [PATCH v3 2/2] Xen: Use the ioreq-server API when available, Paul Durrant, 2014/10/16
- Re: [Qemu-devel] [PATCH v3 2/2] Xen: Use the ioreq-server API when available, Paolo Bonzini, 2014/10/16
Re: [Qemu-devel] [PATCH v3 2/2] Xen: Use the ioreq-server API when available,
Paul Durrant <=
Re: [Qemu-devel] [PATCH v3 2/2] Xen: Use the ioreq-server API when available, Paul Durrant, 2014/10/16
Re: [Qemu-devel] [PATCH v3 2/2] Xen: Use the ioreq-server API when available, Stefano Stabellini, 2014/10/16
Re: [Qemu-devel] [PATCH v3 2/2] Xen: Use the ioreq-server API when available, Peter Maydell, 2014/10/16
Re: [Qemu-devel] [PATCH v3 2/2] Xen: Use the ioreq-server API when available, Stefano Stabellini, 2014/10/16