During a domain reboot, something in xen/xend appears to be holding on to the
old domains memory allocation still when the new domain is created. As a result,
if you don't have enough unallocated memory available for the second instance
(eg, you're using the auto dom0-balloon functionality) then the creation fails.
I had a quick look at the code last night, but couldn't spot the problem. But
then, it /was/ 2.30am in the morning *g*
relevant portion of a xend.log when this happens attached.
J
--
Jody Belka
knew (at) pimb (dot) org
[2005-11-16 13:04:20 xend.XendDomainInfo] INFO (XendDomainInfo:709) Domain has
shutdown: name=inara id=17 reason=reboot.
[2005-11-16 13:04:20 xend.XendDomainInfo] DEBUG (XendDomainInfo:1135)
XendDomainInfo.destroyDomain(17)
[2005-11-16 13:04:21 xend.XendDomainInfo] DEBUG (XendDomainInfo:151)
XendDomainInfo.create(['domain', ['domid', 17], ['name', 'inara'], ['uuid',
'4ac65e03-3900-168f-63bb-63b3fffe8e2d'], ['ssidref', 0], ['vcpus', 1],
['vcpu_avail', 1], ['cpu_weight', 1.0], ['memory', 64], ['maxmem', 64],
['on_poweroff', 'destroy'], ['on_reboot', 'restart'], ['on_crash', 'restart'],
['image', ['linux', ['kernel', '/boot/vmlinuz-2.6.12-xen.unpriv-evms'],
['root', '/dev/hda1 ro'], ['vcpus', '1'], ['vcpus', '1'], ['boot', 'c']]],
['device', ['vif', ['backend', 0], ['script', 'vif-bridge'], ['mac',
'00:16:3e:3f:ec:1a']]], ['device', ['vbd', ['backend', 0], ['dev', 'hda1'],
['uname', 'phy:/dev/evms/domU/inara/root'], ['mode', 'w']]], ['device', ['vbd',
['backend', 0], ['dev', 'hda2'], ['uname', 'phy:/dev/evms/domU/inara/swap0'],
['mode', 'w']]], ['state', '---s--'], ['shutdown_reason', 'reboot'],
['cpu_time', 7.1583156829999997], ['vcpus', 1], ['online_vcpus', 1]])
[2005-11-16 13:04:21 xend.XendDomainInfo] DEBUG (XendDomainInfo:254)
parseConfig: config is ['domain', ['domid', 17], ['name', 'inara'], ['uuid',
'4ac65e03-3900-168f-63bb-63b3fffe8e2d'], ['ssidref', 0], ['vcpus', 1],
['vcpu_avail', 1], ['cpu_weight', 1.0], ['memory', 64], ['maxmem', 64],
['on_poweroff', 'destroy'], ['on_reboot', 'restart'], ['on_crash', 'restart'],
['image', ['linux', ['kernel', '/boot/vmlinuz-2.6.12-xen.unpriv-evms'],
['root', '/dev/hda1 ro'], ['vcpus', '1'], ['vcpus', '1'], ['boot', 'c']]],
['device', ['vif', ['backend', 0], ['script', 'vif-bridge'], ['mac',
'00:16:3e:3f:ec:1a']]], ['device', ['vbd', ['backend', 0], ['dev', 'hda1'],
['uname', 'phy:/dev/evms/domU/inara/root'], ['mode', 'w']]], ['device', ['vbd',
['backend', 0], ['dev', 'hda2'], ['uname', 'phy:/dev/evms/domU/inara/swap0'],
['mode', 'w']]], ['state', '---s--'], ['shutdown_reason', 'reboot'],
['cpu_time', 7.1583156829999997], ['vcpus', 1], ['online_vcpus', 1]]
[2005-11-16 13:04:21 xend.XendDomainInfo] DEBUG (XendDomainInfo:308)
parseConfig: result is {'ssidref': 0, 'name': 'inara', 'bootloader': None,
'on_reboot': 'restart', 'image': ['linux', ['kernel',
'/boot/vmlinuz-2.6.12-xen.unpriv-evms'], ['root', '/dev/hda1 ro'], ['vcpus',
'1'], ['vcpus', '1'], ['boot', 'c']], 'on_poweroff': 'destroy', 'on_crash':
'restart', 'backend': [], 'vcpus': 1, 'cpu_weight': 1.0, 'vcpu_avail': 1,
'memory': 64, 'device': [('vif', ['vif', ['backend', 0], ['script',
'vif-bridge'], ['mac', '00:16:3e:3f:ec:1a']]), ('vbd', ['vbd', ['backend', 0],
['dev', 'hda1'], ['uname', 'phy:/dev/evms/domU/inara/root'], ['mode', 'w']]),
('vbd', ['vbd', ['backend', 0], ['dev', 'hda2'], ['uname',
'phy:/dev/evms/domU/inara/swap0'], ['mode', 'w']])], 'maxmem': 64, 'cpu': None,
'uuid': '4ac65e03-3900-168f-63bb-63b3fffe8e2d'}
[2005-11-16 13:04:21 xend.XendDomainInfo] DEBUG (XendDomainInfo:1016)
XendDomainInfo.construct: None 0
[2005-11-16 13:04:21 xend.XendDomainInfo] DEBUG (XendDomainInfo:1048)
XendDomainInfo.initDomain: 18 1.0
[2005-11-16 13:04:21 xend.XendDomainInfo] ERROR (XendDomainInfo:162) Domain
construction failed
Traceback (most recent call last):
File "/usr/lib/python/xen/xend/XendDomainInfo.py", line 156, in create
vm.initDomain()
File "/usr/lib/python/xen/xend/XendDomainInfo.py", line 1061, in initDomain
xc.domain_memory_increase_reservation(self.domid, m, 0, 0)
error: (12, 'Cannot allocate memory')
[2005-11-16 13:04:21 xend.XendDomainInfo] DEBUG (XendDomainInfo:1127)
XendDomainInfo.destroy: domid=18
[2005-11-16 13:04:21 xend.XendDomainInfo] DEBUG (XendDomainInfo:1135)
XendDomainInfo.destroyDomain(18)
[2005-11-16 13:04:21 xend.XendDomainInfo] ERROR (XendDomainInfo:1299) Failed to
restart domain 17.
Traceback (most recent call last):
File "/usr/lib/python/xen/xend/XendDomainInfo.py", line 1288, in restart
new_dom = xd.domain_create(config)
File
"/home/jmb/src/xen/xen3/dist/install/usr/lib/python/xen/xend/XendDomain.py",
line 214, in domain_create
File "/usr/lib/python/xen/xend/XendDomainInfo.py", line 156, in create
vm.initDomain()
File "/usr/lib/python/xen/xend/XendDomainInfo.py", line 1061, in initDomain
xc.domain_memory_increase_reservation(self.domid, m, 0, 0)
error: (12, 'Cannot allocate memory')
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|