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

[Xen-devel] [PATCH 3/4] xen: VKI_XEN_SYSCTL_sched_id hypercall



From: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>

Xen takes a pointer to a sysctl_sched_id struct, and writes a single uint32_t
into it.  There are no memory reads, and a single memory write.

Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
---
 coregrind/m_syswrap/syswrap-xen.c |    8 ++++++++
 include/vki/vki-xen-sysctl.h      |    7 ++++++-
 2 files changed, 14 insertions(+), 1 deletions(-)

diff --git a/coregrind/m_syswrap/syswrap-xen.c 
b/coregrind/m_syswrap/syswrap-xen.c
index 61aa1e1..8a0196f 100644
--- a/coregrind/m_syswrap/syswrap-xen.c
+++ b/coregrind/m_syswrap/syswrap-xen.c
@@ -400,6 +400,10 @@ PRE(sysctl) {
       }
       break;
 
+   case VKI_XEN_SYSCTL_sched_id:
+       /* No inputs */
+       break;
+
    case VKI_XEN_SYSCTL_cpupool_op:
       PRE_XEN_SYSCTL_READ(cpupool_op, op);
 
@@ -791,6 +795,10 @@ POST(sysctl)
       }
       break;
 
+   case VKI_XEN_SYSCTL_sched_id:
+       POST_XEN_SYSCTL_WRITE(sched_id, sched_id);
+       break;
+
    case VKI_XEN_SYSCTL_cpupool_op:
       if (sysctl->u.cpupool_op.op == VKI_XEN_SYSCTL_CPUPOOL_OP_CREATE ||
           sysctl->u.cpupool_op.op == VKI_XEN_SYSCTL_CPUPOOL_OP_INFO)
diff --git a/include/vki/vki-xen-sysctl.h b/include/vki/vki-xen-sysctl.h
index 32c8722..453752c 100644
--- a/include/vki/vki-xen-sysctl.h
+++ b/include/vki/vki-xen-sysctl.h
@@ -120,6 +120,11 @@ struct vki_xen_sysctl_physinfo_0000000a {
     vki_uint32_t capabilities;
 };
 
+struct vki_xen_sysctl_sched_id {
+    /* OUT variable. */
+    vki_uint32_t              sched_id;
+};
+
 struct vki_xen_sysctl {
     vki_uint32_t cmd;
     vki_uint32_t interface_version; /* XEN_SYSCTL_INTERFACE_VERSION */
@@ -130,7 +135,7 @@ struct vki_xen_sysctl {
         struct vki_xen_sysctl_physinfo_0000000a physinfo_0000000a;
         struct vki_xen_sysctl_topologyinfo      topologyinfo;
         struct vki_xen_sysctl_numainfo          numainfo;
-        //struct vki_xen_sysctl_sched_id          sched_id;
+        struct vki_xen_sysctl_sched_id          sched_id;
         //struct vki_xen_sysctl_perfc_op          perfc_op;
         struct vki_xen_sysctl_getdomaininfolist_00000008 
getdomaininfolist_00000008;
         struct vki_xen_sysctl_getdomaininfolist_00000009 
getdomaininfolist_00000009;
-- 
1.7.2.5


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

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