[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 2/2] migration: send and check the devices betwe
From: |
Dr. David Alan Gilbert |
Subject: |
Re: [Qemu-devel] [PATCH 2/2] migration: send and check the devices between source and distination at the begining |
Date: |
Fri, 30 Sep 2016 10:58:34 +0100 |
User-agent: |
Mutt/1.7.0 (2016-08-17) |
* Li Zhijian (address@hidden) wrote:
>
>
> On 09/30/2016 02:15 PM, Amit Shah wrote:
> > Hi,
> >
> > On (Thu) 29 Sep 2016 [19:06:32], Li Zhijian wrote:
> > > Priviously, if the source and distination have different devices, source
> > > could goto
> > > the status "paused (postmigrate)", and the distination will exit that
> > > means no qemu
> > > is alive.
> > >
> > > After this patch, at above case, source can dectect the some error early
> > > from distination
> > > and stop the migration, source keep in status "running".
> >
> > How would incoming migrations from previous versions work?
>
> You are right. we need to consider more.
>
> How about that:
> we need to introduce a new section type(e.g: QEMU_VM_SECTION_DEVICE_LIST).
>
> source side:
> - at the beginning of qemu_savevm_state_begin(), send
> QEMU_VM_SECTION_DEVICE_LIST first
> - original path
>
> dst side:
> - if we got the QEMU_VM_SECTION_DEVICE_LIST, have a check with the
> devices(name,version)
> - otherwise original path
Yes, and only send it on new machine types.
I think a list could be a good idea; I don't worry too much about the 'paused
(postmigrate)'
case, because libvirt can spot that the destination failed and then restart the
source,
however a list would also fix the opposite case; where the destination has an
extra device
that the source does not have, in most cases I think that doesn't cause a
failure at the moment
but the device has an unusual state.
A QEMU_VM_SECTION_DEVICE_LIST would work, but perhaps a subsection of
vmstate_globalstate
would work?
Dave
>
> Please correct me.
>
> Thanks
> Zhijian
>
> >
> >
> > Amit
> >
> >
> >
>
>
>
--
Dr. David Alan Gilbert / address@hidden / Manchester, UK