mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 02:30:03 +01:00
bitkeeper revision 1.1108.14.2 (4104d6a3pjdnDffuzgjAIWgWEDohww)
Fix console destroy and formatting in xm.
This commit is contained in:
1 parent
01fe2a3416
commit
d9a8a7f2aa
2 files changed
+15
-7
No files matched your search
@@ -553,8 +553,11 @@ class XendDomainInfo:
|
||||
devices have been released.
|
||||
"""
|
||||
if self.dom is None: return 0
|
||||
if self.restart_state == STATE_RESTART_PENDING and self.console:
|
||||
self.console.deregisterChannel()
|
||||
if self.console:
|
||||
if self.restart_pending():
|
||||
self.console.deregisterChannel()
|
||||
else:
|
||||
self.console.close()
|
||||
chan = xend.getDomChannel(self.dom)
|
||||
if chan:
|
||||
log.debug("Closing channel to domain %d", self.dom)
|
||||
|
||||
@@ -469,14 +469,19 @@ class ProgConsoles(Prog):
|
||||
|
||||
def main(self, args):
|
||||
l = server.xend_consoles()
|
||||
print "Dom Port Id"
|
||||
print "Dom Port Id Connection"
|
||||
for x in l:
|
||||
info = server.xend_console(x)
|
||||
d = {}
|
||||
d['dom'] = sxp.child(info, 'dst', ['dst', '?', '?'])[1]
|
||||
d['port'] = sxp.child_value(info, 'port', '?')
|
||||
d['dom'] = sxp.child(info, 'domain', '?')[1]
|
||||
d['port'] = sxp.child_value(info, 'console_port', '?')
|
||||
d['id'] = sxp.child_value(info, 'id', '?')
|
||||
print "%(dom)3s %(port)4s %(id)3s" % d
|
||||
connected = sxp.child(info, 'connected')
|
||||
if connected:
|
||||
d['conn'] = '%s:%s' % (connected[1], connected[2])
|
||||
else:
|
||||
d['conn'] = ''
|
||||
print "%(dom)3s %(port)4s %(id)3s %(conn)s" % d
|
||||
|
||||
xm.prog(ProgConsoles)
|
||||
|
||||
@@ -496,7 +501,7 @@ class ProgConsole(Prog):
|
||||
console = sxp.child(info, "console")
|
||||
if not console:
|
||||
self.err("No console information")
|
||||
port = sxp.child_value(console, "port")
|
||||
port = sxp.child_value(console, "console_port")
|
||||
from xen.util import console_client
|
||||
console_client.connect("localhost", int(port))
|
||||
|
||||
|
||||