Michal Novotny
2010-Nov-30 12:19 UTC
[Xen-devel] [PATCH] XenD: Check for device model if path is not specified (i.e. using auxbin path)
Hi,
this is the patch to check for device model (in XendConfig.py) when the
device_model had no path specified, i.e. XenD was trying to read the
file on the auxbin path. Without this patch applied the meaningless
python error "coercing to Unicode: need string or buffer, NoneType
found" occurred:
[2010-11-30 13:56:47 5255] ERROR (xmlrpclib2:181) Internal error
handling xend.domain.create
Traceback (most recent call last):
File "/usr/lib64/python2.4/site-packages/xen/util/xmlrpclib2.py",
line 134, in _marshaled_dispatch
response = self._dispatch(method, params)
File "/usr/lib64/python2.4/SimpleXMLRPCServer.py", line 406, in
_dispatch
return func(*params)
File
"/usr/lib64/python2.4/site-packages/xen/xend/server/XMLRPCServer.py",
line 80, in domain_create
info = XendDomain.instance().domain_create(config)
File "/usr/lib64/python2.4/site-packages/xen/xend/XendDomain.py",
line 1001, in domain_create
dominfo = XendDomainInfo.create(config)
File
"/usr/lib64/python2.4/site-packages/xen/xend/XendDomainInfo.py",
line 97, in create
domconfig = XendConfig.XendConfig(sxp_obj = config)
File "/usr/lib64/python2.4/site-packages/xen/xend/XendConfig.py",
line 367, in __init__
self.validate()
File "/usr/lib64/python2.4/site-packages/xen/xend/XendConfig.py",
line 558, in validate
self._platform_sanity_check()
File "/usr/lib64/python2.4/site-packages/xen/xend/XendConfig.py",
line 502, in _platform_sanity_check
if not
os.path.exists(self[''platform''][''device_model'']):
File "/usr/lib64/python2.4/posixpath.py", line 171, in exists
st = os.stat(path)
TypeError: coercing to Unicode: need string or buffer, NoneType found
This patch raises VmError with message that no valid device model was
specified if None type was found in the device_model specification.
It''s been tested on non-existing device model where the message is
being
printed. If an invalid (but existing) device_model is set in the
configuration file the domain was destroyed because it crashed. If there
is a path specified (i.e. it''s not using auxbin path) it bails with
error that the device model was not found (which was already implemented
there).
Michal
Signed-off-by: Michal Novotny <minovotn@redhat.com>
--
Michal Novotny<minovotn@redhat.com>, RHCE
Virtualization Team (xen userspace), Red Hat
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
Ian Jackson
2011-Jan-11 18:51 UTC
Re: [Xen-devel] [PATCH] XenD: Check for device model if path is not specified (i.e. using auxbin path)
Michal Novotny writes ("[Xen-devel] [PATCH] XenD: Check for device model if
path is not specified (i.e. using auxbin path)"):> Hi,
> this is the patch to check for device model (in XendConfig.py) when the
> device_model had no path specified, i.e. XenD was trying to read the
> file on the auxbin path. Without this patch applied the meaningless
> python error "coercing to Unicode: need string or buffer, NoneType
> found" occurred:
Thanks, I have applied this patch, and sorry for the delay.
Ian.
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel