[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] Rename fields in physinfo_t structure and add sockets/nodes



# HG changeset patch
# User kaf24@xxxxxxxxxxxxxxxxxxxx
# Node ID 4b052d8a9a2fea73920dbb24b15b945bc5eacf87
# Parent  8bd2e89332778ae6456ecfd53c105f839c0094cb

Rename fields in physinfo_t structure and add sockets/nodes
fields.

diff -r 8bd2e8933277 -r 4b052d8a9a2f tools/xentrace/xentrace.c
--- a/tools/xentrace/xentrace.c Mon Jul  4 15:41:21 2005
+++ b/tools/xentrace/xentrace.c Mon Jul  4 16:02:46 2005
@@ -273,7 +273,10 @@
 
     xc_interface_close(xc_handle);
 
-    return op.u.physinfo.ht_per_core * op.u.physinfo.cores;
+    return (op.u.physinfo.threads_per_core *
+            op.u.physinfo.cores_per_socket *
+            op.u.physinfo.sockets_per_node *
+            op.u.physinfo.nr_nodes);
 }
 
 
diff -r 8bd2e8933277 -r 4b052d8a9a2f xen/arch/x86/dom0_ops.c
--- a/xen/arch/x86/dom0_ops.c   Mon Jul  4 15:41:21 2005
+++ b/xen/arch/x86/dom0_ops.c   Mon Jul  4 16:02:46 2005
@@ -179,11 +179,14 @@
     {
         dom0_physinfo_t *pi = &op->u.physinfo;
 
-        pi->ht_per_core = smp_num_siblings;
-        pi->cores       = boot_cpu_data.x86_num_cores;
-        pi->total_pages = max_page;
-        pi->free_pages  = avail_domheap_pages();
-        pi->cpu_khz     = cpu_khz;
+        pi->threads_per_core = smp_num_siblings;
+        pi->cores_per_socket = boot_cpu_data.x86_num_cores;
+        pi->sockets_per_node = 
+            num_online_cpus() / (pi->threads_per_core * pi->cores_per_socket);
+        pi->nr_nodes         = 1;
+        pi->total_pages      = max_page;
+        pi->free_pages       = avail_domheap_pages();
+        pi->cpu_khz          = cpu_khz;
 
         copy_to_user(u_dom0_op, op, sizeof(*op));
         ret = 0;
diff -r 8bd2e8933277 -r 4b052d8a9a2f xen/include/public/dom0_ops.h
--- a/xen/include/public/dom0_ops.h     Mon Jul  4 15:41:21 2005
+++ b/xen/include/public/dom0_ops.h     Mon Jul  4 16:02:46 2005
@@ -19,7 +19,7 @@
  * This makes sure that old versions of dom0 tools will stop working in a
  * well-defined way (rather than crashing the machine, for instance).
  */
-#define DOM0_INTERFACE_VERSION   0xAAAA1009
+#define DOM0_INTERFACE_VERSION   0xAAAA100A
 
 /************************************************************************/
 
@@ -206,8 +206,10 @@
  */
 #define DOM0_PHYSINFO         22
 typedef struct {
-    u32      ht_per_core;
-    u32      cores;
+    u32      threads_per_core;
+    u32      cores_per_socket;
+    u32      sockets_per_node;
+    u32      nr_nodes;
     u32      cpu_khz;
     memory_t total_pages;
     memory_t free_pages;
diff -r 8bd2e8933277 -r 4b052d8a9a2f tools/python/xen/xend/XendNode.py
--- a/tools/python/xen/xend/XendNode.py Mon Jul  4 15:41:21 2005
+++ b/tools/python/xen/xend/XendNode.py Mon Jul  4 16:02:46 2005
@@ -43,8 +43,8 @@
 
     def physinfo(self):
         pinfo = self.xc.physinfo()
-        info = [['cores', pinfo['cores']],
-                ['hyperthreads_per_core', pinfo['ht_per_core']],
+        info = [['cores_per_socket', pinfo['cores_per_socket']],
+                ['threads_per_core', pinfo['threads_per_core']],
                 ['cpu_mhz', pinfo['cpu_khz']/1000],
                 ['memory', pinfo['total_pages']/256],
                 ['free_memory', pinfo['free_pages']/256]]
diff -r 8bd2e8933277 -r 4b052d8a9a2f tools/python/xen/lowlevel/xc/xc.c
--- a/tools/python/xen/lowlevel/xc/xc.c Mon Jul  4 15:41:21 2005
+++ b/tools/python/xen/lowlevel/xc/xc.c Mon Jul  4 16:02:46 2005
@@ -47,7 +47,8 @@
 
     static char *kwd_list[] = { "dom", "corefile", NULL };
 
-    if ( !PyArg_ParseTupleAndKeywords(args, kwds, "is", kwd_list, &dom, 
&corefile) )
+    if ( !PyArg_ParseTupleAndKeywords(args, kwds, "is", kwd_list,
+                                      &dom, &corefile) )
         goto exit;
 
     if ( (corefile == NULL) || (corefile[0] == '\0') )
@@ -82,7 +83,8 @@
 
     static char *kwd_list[] = { "dom", "ssidref", NULL };
 
-    if ( !PyArg_ParseTupleAndKeywords(args, kwds, "|ii", kwd_list, &dom, 
&ssidref))
+    if ( !PyArg_ParseTupleAndKeywords(args, kwds, "|ii", kwd_list,
+                                      &dom, &ssidref))
         return NULL;
 
     if ( (ret = xc_domain_create(xc->xc_handle, ssidref, &dom)) < 0 )
@@ -687,11 +689,13 @@
         return PyErr_SetFromErrno(xc_error);
 
     return Py_BuildValue("{s:i,s:i,s:l,s:l,s:l}",
-                         "ht_per_core", info.ht_per_core,
-                         "cores",       info.cores,
-                         "total_pages", info.total_pages,
-                         "free_pages",  info.free_pages,
-                         "cpu_khz",     info.cpu_khz);
+                         "threads_per_core", info.threads_per_core,
+                         "cores_per_socket", info.cores_per_socket,
+                         "sockets_per_node", info.sockets_per_node,
+                         "nr_nodes",         info.nr_nodes,
+                         "total_pages",      info.total_pages,
+                         "free_pages",       info.free_pages,
+                         "cpu_khz",          info.cpu_khz);
 }
 
 static PyObject *pyxc_sedf_domain_set(PyObject *self,
@@ -702,12 +706,15 @@
     u32 domid;
     u64 period, slice, latency;
     u16 extratime, weight;
-    static char *kwd_list[] = { "dom", "period", "slice", "latency", 
"extratime", "weight",NULL };
-    
-    if( !PyArg_ParseTupleAndKeywords(args, kwds, "iLLLhh", kwd_list, &domid,
-                                     &period, &slice, &latency, &extratime, 
&weight) )
-        return NULL;
-   if ( xc_sedf_domain_set(xc->xc_handle, domid, period, slice, latency, 
extratime,weight) != 0 )
+    static char *kwd_list[] = { "dom", "period", "slice",
+                                "latency", "extratime", "weight",NULL };
+    
+    if( !PyArg_ParseTupleAndKeywords(args, kwds, "iLLLhh", kwd_list, 
+                                     &domid, &period, &slice,
+                                     &latency, &extratime, &weight) )
+        return NULL;
+   if ( xc_sedf_domain_set(xc->xc_handle, domid, period,
+                           slice, latency, extratime,weight) != 0 )
         return PyErr_SetFromErrno(xc_error);
 
     Py_INCREF(zero);

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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.