Mailing List Archive

[xen-unstable] xend: Make _setCPUAffinity() errors nonfatal on domain resume
# HG changeset patch
# User Keir Fraser <keir.fraser@citrix.com>
# Date 1227190629 0
# Node ID 857bda0c15b3584c6c2048657fd68ffbaef37b5c
# Parent e3a0c3c9fd7b1d25e27397fd9c2e26d4d1a020a5
xend: Make _setCPUAffinity() errors nonfatal on domain resume

This patch allows domains to be resumed on different number of CPUs. After
c/s 18764, a domain cannot be resumed when _setCPUAffinity() fails, which
happens when affinity should be set to a non-existent CPU. This patch
makes _setCPUAffinity() errors nonfatal.

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
---
tools/python/xen/xend/XendDomainInfo.py | 9 ++++++++-
1 files changed, 8 insertions(+), 1 deletion(-)

diff -r e3a0c3c9fd7b -r 857bda0c15b3 tools/python/xen/xend/XendDomainInfo.py
--- a/tools/python/xen/xend/XendDomainInfo.py Thu Nov 20 14:15:50 2008 +0000
+++ b/tools/python/xen/xend/XendDomainInfo.py Thu Nov 20 14:17:09 2008 +0000
@@ -479,7 +479,14 @@ class XendDomainInfo:
if state in (DOM_STATE_SUSPENDED, DOM_STATE_HALTED):
try:
self._constructDomain()
- self._setCPUAffinity()
+
+ try:
+ self._setCPUAffinity()
+ except:
+ # usually a CPU we want to set affinity to does not exist
+ # we just ignore it so that the domain can still be restored
+ log.warn("Cannot restore CPU affinity")
+
self._storeVmDetails()
self._createChannels()
self._createDevices()

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