WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] [xen-unstable] Change xm dmesg -c so that it prints out

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] Change xm dmesg -c so that it prints out the current buffer as well as clearing
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Thu, 22 Mar 2007 08:00:23 -0700
Delivery-date: Thu, 22 Mar 2007 08:00:07 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User Ewan Mellor <ewan@xxxxxxxxxxxxx>
# Date 1174478622 0
# Node ID c9ac275f8985ebaa1159fa6e01a10989fb704a39
# Parent  f1833268b28fa1d8b6f81c634aeb19143d1cff1e
Change xm dmesg -c so that it prints out the current buffer as well as clearing
it.  This avoids a race so that you don't lose messages, matches the behaviour
of the hypercall, and the Unix dmesg command.

Change the Xen-API binding to use a separate function host.dmesg_clear rather
than a flag on host.dmesg.

Signed-off-by: Ewan Mellor <ewan@xxxxxxxxxxxxx>
---
 tools/python/xen/xend/XendAPI.py   |   11 ++++++-----
 tools/python/xen/xend/XendDmesg.py |    3 ++-
 tools/python/xen/xm/main.py        |   19 +++++++++----------
 3 files changed, 17 insertions(+), 16 deletions(-)

diff -r f1833268b28f -r c9ac275f8985 tools/python/xen/xend/XendAPI.py
--- a/tools/python/xen/xend/XendAPI.py  Wed Mar 21 08:51:51 2007 +0000
+++ b/tools/python/xen/xend/XendAPI.py  Wed Mar 21 12:03:42 2007 +0000
@@ -665,6 +665,7 @@ class XendAPI(object):
                     ('add_to_other_config', None),
                     ('remove_from_other_config', None),
                     ('dmesg', 'String'),
+                    ('dmesg_clear', 'String'),
                     ('get_log', 'String'),
                     ('send_debug_keys', None)]
     
@@ -742,11 +743,11 @@ class XendAPI(object):
             return xen_api_error(XEND_ERROR_HOST_RUNNING)
         return xen_api_error(XEND_ERROR_UNSUPPORTED)        
 
-    def host_dmesg(self, session, host_ref, clear):
-        if clear:
-            return xen_api_success(XendDmesg.instance().clear())
-        else:
-            return xen_api_success(XendDmesg.instance().info())
+    def host_dmesg(self, session, host_ref):
+        return xen_api_success(XendDmesg.instance().info())
+
+    def host_dmesg_clear(self, session, host_ref):
+        return xen_api_success(XendDmesg.instance().clear())
 
     def host_get_log(self, session, host_ref):
         log_file = open(XendLogging.getLogFilename())
diff -r f1833268b28f -r c9ac275f8985 tools/python/xen/xend/XendDmesg.py
--- a/tools/python/xen/xend/XendDmesg.py        Wed Mar 21 08:51:51 2007 +0000
+++ b/tools/python/xen/xend/XendDmesg.py        Wed Mar 21 12:03:42 2007 +0000
@@ -13,6 +13,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 #============================================================================
 # Copyright (C) 2004, 2005 Mike Wray <mike.wray@xxxxxx>
+# Copyright (C) 2007       XenSource Inc.
 #============================================================================
 
 """Get dmesg output for this node.
@@ -28,7 +29,7 @@ class XendDmesg:
         return self.xc.readconsolering()
 
     def clear(self):
-        self.xc.readconsolering(True)
+        return self.xc.readconsolering(True)
 
 def instance():
     global inst
diff -r f1833268b28f -r c9ac275f8985 tools/python/xen/xm/main.py
--- a/tools/python/xen/xm/main.py       Wed Mar 21 08:51:51 2007 +0000
+++ b/tools/python/xen/xm/main.py       Wed Mar 21 12:03:42 2007 +0000
@@ -217,7 +217,7 @@ SUBCOMMAND_OPTIONS = {
        ('-q', '--quiet', 'Do not print an error message if the domain does not 
exist'),
     ),
     'dmesg': (
-       ('-c', '--clear', 'Clear dmesg buffer'),
+       ('-c', '--clear', 'Clear dmesg buffer as well as printing it'),
     ),
     'vnet-list': (
        ('-l', '--long', 'List Vnets as SXP'),
@@ -1587,17 +1587,16 @@ def xm_dmesg(args):
         usage('dmesg')
 
     if serverType == SERVER_XEN_API:
+        host = server.xenapi.session.get_this_host()
+        if use_clear:
+            print server.xenapi.host.dmesg_clear(host),
+        else:
+            print server.xenapi.host.dmesg(host),
+    else:
         if not use_clear:
-            print server.xenapi.host.dmesg(
-                server.xenapi.session.get_this_host(),0)
+            print server.xend.node.dmesg.info(),
         else:
-            server.xenapi.host.dmesg(
-                server.xenapi.session.get_this_host(),1)
-    else:
-        if not use_clear:
-            print server.xend.node.dmesg.info()
-        else:
-            server.xend.node.dmesg.clear()
+            print server.xend.node.dmesg.clear(),
 
 def xm_log(args):
     arg_check(args, "log", 0)

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

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] Change xm dmesg -c so that it prints out the current buffer as well as clearing, Xen patchbot-unstable <=