Hi,
I tried your patches. Acutually, error messages in xend.log have gone.
So, the problem that PCI config can't be read correctly, is resolved.
However, my D-state problem is not resolved yet.
In a PCI HBA card, qemu-dm.log shows:
check_power_state: Error: Failed to change power state. [00:03.0][requested sta
te:3][current state:0]
Probably this is a hardware problem. After that, an HVM guest can't
boot up from its disk again.
Thus, for the present, I'll still set 'pci_power_mgmt=0'.
Thanks,
Kouya
Yuji Shimada writes:
> On Fri, 6 Mar 2009 14:23:20 +0900
> Kouya Shimura <kouya@xxxxxxxxxxxxxx> wrote:
>
> > Hi,
> >
> > Using D3hot state of PCI devices in xen is not mature yet.
> > I met domain destruction/creation troubles in some PCI cards since the
> > PCI config registers can't be read with D3hot state. xend.log is attached.
> >
> > This patch set makes the management of PCI D-states by guest optional.
> >
> > The default is "pci_power_mgmt=0" which disables the guest OS from
> > managing D-states because it would be better to avoid the trouble than
> > advantage of low power consumption.
> >
> > Thanks,
> > Kouya
> >
> > From xend.log:
> >
> > [2009-03-04 09:49:24 4356] ERROR (XendDomainInfo:2584)
> > XendDomainInfo.destroy: domain destruction failed.
> > Traceback (most recent call last):
> > File "/usr/lib64/python/xen/xend/XendDomainInfo.py", line 2578, in destroy
> > do_FLR(self.domid)
> > File "/usr/lib64/python/xen/xend/XendDomainInfo.py", line 314, in do_FLR
> > raise VmError("pci: failed to locate device and "+
> > VmError: pci: failed to locate device and parse it's resources - ord()
> > expected a character, but string of length 0 found
> > ...[snip]...
> > [2009-03-04 10:31:24 4343] ERROR (XendDomainInfo:2445)
> > XendDomainInfo.initDomain: exception occurred
> > Traceback (most recent call last):
> > File "/usr/lib64/python/xen/xend/XendDomainInfo.py", line 2437, in
> > _initDomain
> > self._createDevices()
> > File "/usr/lib64/python/xen/xend/XendDomainInfo.py", line 2049, in
> > _createDevices
> > devid = self._createDevice(devclass, config)
> > File "/usr/lib64/python/xen/xend/XendDomainInfo.py", line 2016, in
> > _createDevice
> > return self.getDeviceController(deviceClass).createDevice(devConfig)
> > File "/usr/lib64/python/xen/xend/server/DevController.py", line 67, in
> > createDevice
> > self.setupDevice(config)
> > File "/usr/lib64/python/xen/xend/server/pciif.py", line 399, in
> > setupDevice
> > raise VmError("pci: failed to locate device and "+
> > VmError: pci: failed to locate device and parse it's resources - ord()
> > expected a character, but string of length 0 found
>
> Hi, Shimura-san
>
> In my environment, I can't draw above error.
>
> So could you test the following patches?
>
> http://lists.xensource.com/archives/html/xen-devel/2009-04/msg00829.html
>
> I think your D-state problem is resolved with these patches.
>
> Thanks,
> --
> Yuji Shimada
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|