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

Re: [Xen-devel] Should 'xm save' work, when using PCI pass through?


  • To: Keir Fraser <keir.fraser@xxxxxxxxxxxxx>
  • From: Tom Rotenberg <tom.rotenberg@xxxxxxxxx>
  • Date: Wed, 23 Sep 2009 18:35:51 +0300
  • Cc: Ian Pratt <Ian.Pratt@xxxxxxxxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
  • Delivery-date: Wed, 23 Sep 2009 08:36:19 -0700
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; b=azOl4c4WhqcvKffojfqVONxs0wFpV5+ZgJH1C9aCnPjvtfDpQ7XZUHjOwwU4aE+yXH DVoNct4vhRJ95lwMLu52beugBXNm90NsW/iGBlWqui/vL2L8/shi1y2Rz4aAqPu4t7i0 wDhzAf6lDZIyRY29pXwZdKJR6+O4hRI3W/iHc=
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>

Just tried it... it doesn't work. It looks like, because we have
pass-through devices, the restore is trying to send signals to qemu,
while the qemu instance is None...
The errors i see in the xend.log:

"
...
[2009-09-23 11:43:44 4345] DEBUG (XendDomainInfo:1120)
XendDomainInfo.destroyDevice: deviceClass = console, device =
console/0
[2009-09-23 11:43:44 4345] DEBUG (XendDomainInfo:2196) Removing pci/0
[2009-09-23 11:43:44 4345] DEBUG (XendDomainInfo:1120)
XendDomainInfo.destroyDevice: deviceClass = pci, device = pci/0
[2009-09-23 11:43:44 4345] DEBUG (pciif:418) XendDomainInfo.handleAerStateWatch
[2009-09-23 11:43:44 4345] DEBUG (pciif:537) pci: unregister aer watch
[2009-09-23 11:43:44 4345] ERROR (XendDomain:1155) Restore failed
Traceback (most recent call last):
  File "usr/lib/python2.5/site-packages/xen/xend/XendDomain.py", line
1147, in domain_restore_fd
    return XendCheckpoint.restore(self, fd, paused=paused,
relocating=relocating)
  File "usr/lib/python2.5/site-packages/xen/xend/XendCheckpoint.py",
line 213, in restore
    dominfo = xd.restore_(vmconfig)
  File "usr/lib/python2.5/site-packages/xen/xend/XendDomain.py", line
509, in restore_
    dominfo = XendDomainInfo.restore(config)
  File "usr/lib/python2.5/site-packages/xen/xend/XendDomainInfo.py",
line 234, in restore
    vm.resume()
  File "usr/lib/python2.5/site-packages/xen/xend/XendDomainInfo.py",
line 501, in resume
    self._createDevices()
  File "usr/lib/python2.5/site-packages/xen/xend/XendDomainInfo.py",
line 2170, in _createDevices
    self.pci_device_configure_boot()
  File "usr/lib/python2.5/site-packages/xen/xend/XendDomainInfo.py",
line 594, in pci_device_configure_boot
    self.pci_device_configure(dev_sxp)
  File "usr/lib/python2.5/site-packages/xen/xend/XendDomainInfo.py",
line 830, in pci_device_configure
    vdevfn = self.hvm_pci_device_insert(dev_config)
  File "usr/lib/python2.5/site-packages/xen/xend/XendDomainInfo.py",
line 722, in hvm_pci_device_insert
    return self.hvm_pci_device_insert_dev(new_dev)
  File "usr/lib/python2.5/site-packages/xen/xend/XendDomainInfo.py",
line 736, in hvm_pci_device_insert_dev
    self.image.signalDeviceModel('pci-ins', 'pci-inserted', bdf_str)
AttributeError: 'NoneType' object has no attribute 'signalDeviceModel'
"

Shouldn't we develop basic save/restore functionality for domains with
pass-through devices (without migration to a different machine)?

Tom

On Wed, Sep 23, 2009 at 4:02 PM, Keir Fraser <keir.fraser@xxxxxxxxxxxxx> wrote:
> Well, you could try removing the warning check from xend and see what
> happens...
>
>  -- Keir
>
> On 23/09/2009 13:51, "Tom Rotenberg" <tom.rotenberg@xxxxxxxxx> wrote:
>
>> Why? if i send the domain to S3, and then save the PCI config space -
>> isn't it enough?
>>
>> On Wed, Sep 23, 2009 at 3:49 PM, Keir Fraser <keir.fraser@xxxxxxxxxxxxx>
>> wrote:
>>> I'm not sure xend can save/restore passthrough state. In which case your
>>> only option is to hot-unplug the PCI devices from the guest first.
>>>
>>>  -- Keir
>>>
>>> On 23/09/2009 12:16, "Tom Rotenberg" <tom.rotenberg@xxxxxxxxx> wrote:
>>>
>>>> Well, i just tried sending the domain to S3, and then saving it's
>>>> state, but i got an error saying, that 'migration isn't allowed with
>>>> pass-through devices'.
>>>> How can i workaround this?
>>>>
>>>> On Wed, Sep 23, 2009 at 1:45 PM, Ian Pratt <Ian.Pratt@xxxxxxxxxxxxx> wrote:
>>>>>> I have a domain with PCI pass-through, and i would like to save it,
>>>>>> and restore it later (maybe even after rebooting the dom0). Is it
>>>>>> possible to do this using 'xm save' & 'xm restore', although my domain
>>>>>> has PCI pass through?
>>>>>
>>>>> You'll need to make sure the physical devices are shutdown. The best way 
>>>>> of
>>>>> doing this is to hot unplug them. You could also achieve this by putting
>>>>> the
>>>>> VM into S3 sleep before doing the save.
>>>>>
>>>>> Ian
>>>>>
>>>>
>>>> _______________________________________________
>>>> Xen-devel mailing list
>>>> Xen-devel@xxxxxxxxxxxxxxxxxxx
>>>> http://lists.xensource.com/xen-devel
>>>
>>>
>>>
>
>
>

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.