|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH 1 of 2] valgrind/xen: VKI_XEN_SYSCTL_sched_id hypercall
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>
diff -r b3399fbed618 -r 0ed676b7bd46 coregrind/m_syswrap/syswrap-xen.c
--- 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);
@@ -783,6 +787,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 -r b3399fbed618 -r 0ed676b7bd46 include/vki/vki-xen-sysctl.h
--- a/include/vki/vki-xen-sysctl.h
+++ b/include/vki/vki-xen-sysctl.h
@@ -54,6 +54,11 @@ struct vki_xen_sysctl_getdomaininfolist_
vki_uint32_t num_domains;
};
+struct vki_xen_sysctl_sched_id {
+ /* OUT variable. */
+ vki_uint32_t sched_id;
+};
+
#define VKI_XEN_SYSCTL_CPUPOOL_OP_CREATE 1 /* C */
#define VKI_XEN_SYSCTL_CPUPOOL_OP_DESTROY 2 /* D */
#define VKI_XEN_SYSCTL_CPUPOOL_OP_INFO 3 /* I */
@@ -110,7 +115,7 @@ struct vki_xen_sysctl {
struct vki_xen_sysctl_physinfo physinfo;
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;
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |