# HG changeset patch
# User dan@xxxxxxxxxxxxxxxxxxxxxxxxxxx
# Node ID 234b3d608c86496be30adcd147f9213bec8befd5
# Parent 2ce5edc0ccbd9260037bb47c4fe1780cc5d75d44
Make test 04_memset detect bug #380 and restart the console daemon.
This should allow the rest of the tests to run without reporting
failure because this test killed the console system.
diff -r 2ce5edc0ccbd -r 234b3d608c86 tools/xm-test/lib/XmTestLib/Console.py
--- a/tools/xm-test/lib/XmTestLib/Console.py Thu Nov 17 10:54:52 2005
+++ b/tools/xm-test/lib/XmTestLib/Console.py Thu Nov 17 10:56:13 2005
@@ -33,9 +33,13 @@
from Test import *
+TIMEDOUT = 1
+RUNAWAY = 2
+
class ConsoleError(Exception):
- def __init__(self, msg):
+ def __init__(self, msg, reason=TIMEDOUT):
self.errMsg = msg
+ self.reason = reason
def __str__(self):
return str(self.errMsg)
@@ -149,7 +153,7 @@
if self.limit and bytes >= self.limit:
raise ConsoleError("Console run-away (exceeded %i bytes)"
- % self.limit)
+ % self.limit, RUNAWAY)
if self.debugMe:
print "Ignored %i bytes of miscellaneous console output" % bytes
@@ -187,7 +191,7 @@
if self.limit and bytes >= self.limit:
raise ConsoleError("Console run-away (exceeded %i bytes)"
- % self.limit)
+ % self.limit, RUNAWAY)
if str == "\n":
if lines > 0:
diff -r 2ce5edc0ccbd -r 234b3d608c86
tools/xm-test/tests/memset/04_memset_smallmem_pos.py
--- a/tools/xm-test/tests/memset/04_memset_smallmem_pos.py Thu Nov 17
10:54:52 2005
+++ b/tools/xm-test/tests/memset/04_memset_smallmem_pos.py Thu Nov 17
10:56:13 2005
@@ -36,6 +36,17 @@
# See if this hits the byte limit
console.runCmd("ls")
except ConsoleError, e:
- FAIL(str(e))
+ if e.reason == RUNAWAY:
+ # Need to stop the domain before we restart the console daemon
+ domain.destroy()
+ if verbose:
+ print "*** Attempting restart of xenconsoled"
+ s, o = traceCommand("killall xenconsoled")
+ s, o = traceCommand("xenconsoled")
+ if s != 0:
+ print "*** Starting xenconsoled failed: %i" % s
+ FAIL("Bug #380: I crashed the console system")
+ else:
+ FAIL(str(e))
domain.destroy()
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|