|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] xl list -l doesn't work for incoming domain
On 11/12/2014 09:52 AM, Ian Campbell wrote:
> On Wed, 2014-11-12 at 09:48 -0500, Zhigang Wang wrote:
>> On 11/12/2014 09:40 AM, Ian Campbell wrote:
>>> On Wed, 2014-11-12 at 09:36 -0500, Zhigang Wang wrote:
>>>> Also I want clarify one thing: the @introduceDomain watch is triggered at
>>>> the same
>>>> time for xm/xend and xl: when VM fully migrated.
>>>>
>>>> The different between xm/xend and xl is: xend will populate destination
>>>> side VM
>>>> xenstore entries at the beginning of migration.
>>>
>>> Do you mean *before* @introduceDomain has triggered?
>>
>> Yes, from my test. I didn't check the code logic yet.
>
> I think anything which is trying to inspect the state of a domain before
> the corresponding @introduceDomain and expecting anything more complex
> than the fact of that domain's existence is broken.
...
> IOW the json associated with such a domain should be:
> {
> "domid": 123,
> "config": {}
> }
> Or even
> {
> "domid": 123,
> }
>
> No more or less.
Here is the xl list output:
# xl list
Name ID Mem VCPUs State
Time(s)
Domain-0 0 856 4 r-----
2758.9
0004fb00000600003f327a843a5f2b72--incoming 7 131 1 --p---
0.0
So we don't even want to match the two results?
>> I designed a test: set eth0 to low speed:
>>
>> $ ethtool -s eth0 speed 10 duplex half
>>
>> and then migrate the VM. I can see the watch been triggered very late
>> (couple minutes later after migration).
>
> A couple of minutes after *starting* the migration (i.e. the couple of
> minutes is just the time taken to migrate) or a couple of minutes after
> *finishing* the migration (which would be unfortunate and should be
> investigated).
Sorry I didn't say it clearly. I mean couple minutes after the migration
started, but before the migration finish.
From xend code xend/XendDomainInfo.py:
def completeRestore(self, store_mfn, console_mfn):
log.debug("XendDomainInfo.completeRestore")
self.store_mfn = store_mfn
self.console_mfn = console_mfn
self._introduceDomain()
self.image = image.create(self, self.info)
if self.image:
self.image.createDeviceModel(True)
self._storeDomDetails()
self._registerWatches()
self.refreshShutdown()
log.debug("XendDomainInfo.completeRestore done")
It seems the self._introduceDomain() does called at the end of migration after
memory transfer.
Thanks,
Zhigang
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |