[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] Fix a problem where the vcpu count for dom0 doesn't get reset back to the
# HG changeset patch # User pl@xxxxxxxxxx # Node ID 647d012b9a36be50d10c4da8dd571f8faa9b4d91 # Parent 057c5554f8c3dc7c36a4b89ecec52cbf7d917f73 Fix a problem where the vcpu count for dom0 doesn't get reset back to the original value when 01_enforce_dom0_cpus_basic_pos fails. --- tools/xm-test/tests/enforce_dom0_cpus/01_enforce_dom0_cpus_basic_pos.py | 21 +++++----- 1 files changed, 11 insertions(+), 10 deletions(-) diff -r 057c5554f8c3 -r 647d012b9a36 tools/xm-test/tests/enforce_dom0_cpus/01_enforce_dom0_cpus_basic_pos.py --- a/tools/xm-test/tests/enforce_dom0_cpus/01_enforce_dom0_cpus_basic_pos.py Thu Jun 01 11:57:33 2006 +0100 +++ b/tools/xm-test/tests/enforce_dom0_cpus/01_enforce_dom0_cpus_basic_pos.py Thu Jun 01 12:11:59 2006 +0100 @@ -28,6 +28,12 @@ check_status = 1 check_status = 1 max_tries = 10 +def reset_vcpu_count(): + status, output = traceCommand("xm vcpu-set 0 %s"%(dom0_online_vcpus)) + if status != 0: + print "WARNING!!! Unable to set vcpus back to %s, please set manually"\ + %(dom0_online_vcpus) + # 1) Make sure we have a multi cpu system and dom0 has at least 2 vcpus online. if smpConcurrencyLevel() <= 1: @@ -57,6 +63,7 @@ if check_status and status != 0: # 4) restart xend with new config os.putenv("XEND_CONFIG", "/tmp/xend-config.sxp") status = restartXend() +os.unsetenv("XEND_CONFIG") if check_status and status != 0: ns, no = restartXend() if ns != 0: @@ -75,7 +82,7 @@ while timeout + starttime > time.time(): cmd = "grep \"^processor\" /proc/cpuinfo | wc -l" status, output = traceCommand(cmd) if check_status and status != 0: - os.unsetenv("XEND_CONFIG") + reset_vcpu_count() restartXend() FAIL("\"%s\" returned invalid %i != 0" %(cmd,status)) # Has it succeeded? If so, we can leave the loop @@ -84,7 +91,7 @@ while timeout + starttime > time.time(): # Sleep for 1 second before trying again time.sleep(1) if output != str(enforce_dom0_cpus): - os.unsetenv("XEND_CONFIG") + reset_vcpu_count() restartXend() FAIL("/proc/cpuinfo says xend didn't enforce dom0_cpus (%s != %s)"%(output, enforce_dom0_cpus)) @@ -92,17 +99,13 @@ if output != str(enforce_dom0_cpus): # 6) count number of online cpus and see that it matches enforce value num_online = int(getDomInfo("Domain-0", "VCPUs")) if num_online != enforce_dom0_cpus: - os.unsetenv("XEND_CONFIG") + reset_vcpu_count() restartXend() FAIL("xm says xend didn't enforce dom0_cpus (%s != %s)" %(num_online, enforce_dom0_cpus)) # 7) restore dead processors -status, output = traceCommand("xm vcpu-set 0 %s"%(dom0_online_vcpus)) -if check_status and status != 0: - os.unsetenv("XEND_CONFIG") - restartXend() - FAIL("\"%s\" returned invalid %i != 0" %(cmd,status)) +reset_vcpu_count() # check restore worked # Since this also takes time, we will do it in a loop with a 20 second timeout. @@ -114,12 +117,10 @@ while timeout + starttime > time.time(): break time.sleep(1) if num_online != dom0_online_vcpus: - os.unsetenv("XEND_CONFIG") restartXend() FAIL("failed to restore dom0's VCPUs") # 8) Restart xend with default config -os.unsetenv("XEND_CONFIG") restartXend() _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |