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] Added host.dmesg method.

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] Added host.dmesg method.
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Fri, 02 Feb 2007 08:45:09 -0800
Delivery-date: Fri, 02 Feb 2007 08:45:16 -0800
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 1170411917 0
# Node ID c804da44b06cf342e1500c70e6e58f638c03afd7
# Parent  dc32de8329eb52cb7739ad4aff9a0dccaa88499b
Added host.dmesg method.

Also, fixed all of the host methods, which had been broken by the introduction
of the host_metrics class.

Signed-off-by: Ewan Mellor <ewan@xxxxxxxxxxxxx>
---
 docs/xen-api/xenapi-datamodel.tex |   34 +++++++++++++++++++++++++++++++++-
 tools/libxen/include/xen_host.h   |    7 +++++++
 tools/libxen/src/xen_host.c       |   17 +++++++++++++++++
 tools/libxen/test/test_bindings.c |   17 +++++++++++++++++
 tools/python/xen/xend/XendAPI.py  |   10 +++++++---
 5 files changed, 81 insertions(+), 4 deletions(-)

diff -r dc32de8329eb -r c804da44b06c docs/xen-api/xenapi-datamodel.tex
--- a/docs/xen-api/xenapi-datamodel.tex Fri Feb 02 10:07:58 2007 +0000
+++ b/docs/xen-api/xenapi-datamodel.tex Fri Feb 02 10:25:17 2007 +0000
@@ -4664,10 +4664,42 @@ void
 \vspace{0.3cm}
 \vspace{0.3cm}
 \vspace{0.3cm}
+\subsubsection{RPC name:~dmesg}
+
+{\bf Overview:} 
+Get the host xen dmesg.
+
+ \noindent {\bf Signature:} 
+\begin{verbatim} string dmesg (session_id s, host ref host)\end{verbatim}
+
+
+\noindent{\bf Arguments:}
+
+ 
+\vspace{0.3cm}
+\begin{tabular}{|c|c|p{7cm}|}
+ \hline
+{\bf type} & {\bf name} & {\bf description} \\ \hline
+{\tt host ref } & host & The Host to query \\ \hline 
+
+\end{tabular}
+
+\vspace{0.3cm}
+
+ \noindent {\bf Return Type:} 
+{\tt 
+string
+}
+
+
+dmesg string
+\vspace{0.3cm}
+\vspace{0.3cm}
+\vspace{0.3cm}
 \subsubsection{RPC name:~get\_all}
 
 {\bf Overview:} 
-Return a list of all the hosts known to the system
+Return a list of all the hosts known to the system.
 
  \noindent {\bf Signature:} 
 \begin{verbatim} ((host ref) Set) get_all (session_id s)\end{verbatim}
diff -r dc32de8329eb -r c804da44b06c tools/libxen/include/xen_host.h
--- a/tools/libxen/include/xen_host.h   Fri Feb 02 10:07:58 2007 +0000
+++ b/tools/libxen/include/xen_host.h   Fri Feb 02 10:25:17 2007 +0000
@@ -394,6 +394,13 @@ xen_host_reboot(xen_session *session, xe
 
 
 /**
+ * Get the host xen dmesg.
+ */
+extern bool
+xen_host_dmesg(xen_session *session, char **result, xen_host host);
+
+
+/**
  * Return a list of all the hosts known to the system.
  */
 extern bool
diff -r dc32de8329eb -r c804da44b06c tools/libxen/src/xen_host.c
--- a/tools/libxen/src/xen_host.c       Fri Feb 02 10:07:58 2007 +0000
+++ b/tools/libxen/src/xen_host.c       Fri Feb 02 10:25:17 2007 +0000
@@ -632,6 +632,23 @@ xen_host_reboot(xen_session *session, xe
 
 
 bool
+xen_host_dmesg(xen_session *session, char **result, xen_host host)
+{
+    abstract_value param_values[] =
+        {
+            { .type = &abstract_type_string,
+              .u.string_val = host }
+        };
+
+    abstract_type result_type = abstract_type_string;
+
+    *result = NULL;
+    XEN_CALL_("host.dmesg");
+    return session->ok;
+}
+
+
+bool
 xen_host_get_all(xen_session *session, struct xen_host_set **result)
 {
 
diff -r dc32de8329eb -r c804da44b06c tools/libxen/test/test_bindings.c
--- a/tools/libxen/test/test_bindings.c Fri Feb 02 10:07:58 2007 +0000
+++ b/tools/libxen/test/test_bindings.c Fri Feb 02 10:25:17 2007 +0000
@@ -206,6 +206,20 @@ int main(int argc, char **argv)
         return 1;
     }
 
+    char *dmesg;
+    if (!xen_host_dmesg(session, &dmesg, host))
+    {
+        print_error(session);
+        xen_string_string_map_free(versions);
+        xen_host_free(host);
+        xen_vm_record_free(vm_record);
+        xen_uuid_bytes_free(vm_uuid_bytes);
+        xen_uuid_free(vm_uuid);
+        xen_vm_free(vm);
+        CLEANUP;
+        return 1;
+    }
+
     printf("%s.\n", vm_uuid);
 
     fprintf(stderr, "In bytes, the VM UUID is ");
@@ -222,6 +236,8 @@ int main(int argc, char **argv)
         printf("%s -> %s.\n", versions->contents[i].key,
                versions->contents[i].val);
     }
+
+    printf("Host dmesg follows:\n%s\n\n", dmesg);
 
     printf("%s.\n", vm_record->uuid);
 
@@ -244,6 +260,7 @@ int main(int argc, char **argv)
 
     xen_host_free(host);
     xen_string_string_map_free(versions);
+    free(dmesg);
 
 
     xen_vm new_vm = create_new_vm(session, true);
diff -r dc32de8329eb -r c804da44b06c tools/python/xen/xend/XendAPI.py
--- a/tools/python/xen/xend/XendAPI.py  Fri Feb 02 10:07:58 2007 +0000
+++ b/tools/python/xen/xend/XendAPI.py  Fri Feb 02 10:25:17 2007 +0000
@@ -22,7 +22,7 @@ import traceback
 import traceback
 import threading
 
-from xen.xend import XendDomain, XendDomainInfo, XendNode
+from xen.xend import XendDomain, XendDomainInfo, XendNode, XendDmesg
 from xen.xend import XendLogging, XendTaskManager
 
 from xen.xend.XendAuthSessions import instance as auth_manager
@@ -615,7 +615,8 @@ class XendAPI(object):
                     ('reboot', None),
                     ('shutdown', None),
                     ('add_to_other_config', None),
-                    ('remove_from_other_config', None)]
+                    ('remove_from_other_config', None),
+                    ('dmesg', 'String')]
     
     host_funcs = [('get_by_name_label', 'Set(host)')]
 
@@ -673,6 +674,9 @@ class XendAPI(object):
         if not XendDomain.instance().allow_new_domains():
             return xen_api_error(XEND_ERROR_HOST_RUNNING)
         return xen_api_error(XEND_ERROR_UNSUPPORTED)        
+
+    def host_dmesg(self, session, host_ref):
+        return xen_api_success(XendDmesg.instance().info())
 
     def host_get_record(self, session, host_ref):
         node = XendNode.instance()
@@ -737,7 +741,7 @@ class XendAPI(object):
                             'memory_free',
                             'host']
     host_metrics_attr_rw = []
-    host_methods = []
+    host_metrics_methods = []
 
     def _host_metrics_get(self, ref, f):
         return xen_api_success(getattr(node, f)())

_______________________________________________
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] Added host.dmesg method., Xen patchbot-unstable <=