[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Xen-devel] [PATCH v2 1/4] xen: add real time scheduler rt
- To: Meng Xu <mengxu@xxxxxxxxxxxxx>, <xen-devel@xxxxxxxxxxxxx>
- From: George Dunlap <george.dunlap@xxxxxxxxxxxxx>
- Date: Mon, 8 Sep 2014 15:32:49 +0100
- Cc: ian.campbell@xxxxxxxxxx, xisisu@xxxxxxxxx, stefano.stabellini@xxxxxxxxxxxxx, lu@xxxxxxxxxxxxx, dario.faggioli@xxxxxxxxxx, ian.jackson@xxxxxxxxxxxxx, ptxlinh@xxxxxxxxx, xumengpanda@xxxxxxxxx, JBeulich@xxxxxxxx, chaowang@xxxxxxxxx, lichong659@xxxxxxxxx, dgolomb@xxxxxxxxxxxxxx
- Delivery-date: Mon, 08 Sep 2014 14:35:56 +0000
- List-id: Xen developer discussion <xen-devel.lists.xen.org>
Interface comments on the first pass; I'll dig into the algorithm more
on the second pass.
On 09/07/2014 08:40 PM, Meng Xu wrote:
diff --git a/xen/common/schedule.c b/xen/common/schedule.c
index 73cc2ea..dc4f749 100644
--- a/xen/common/schedule.c
+++ b/xen/common/schedule.c
@@ -69,6 +69,7 @@ static const struct scheduler *schedulers[] = {
&sched_credit_def,
&sched_credit2_def,
&sched_arinc653_def,
+ &sched_rt_ds_def,
I think it would be nicer to leave the _ out of the middle -- just call
this the "rtds" server (here and elsewhere).
};
static struct scheduler __read_mostly ops;
diff --git a/xen/include/public/domctl.h b/xen/include/public/domctl.h
index 69a8b44..11654d0 100644
--- a/xen/include/public/domctl.h
+++ b/xen/include/public/domctl.h
@@ -347,6 +347,8 @@ DEFINE_XEN_GUEST_HANDLE(xen_domctl_max_vcpus_t);
#define XEN_SCHEDULER_CREDIT 5
#define XEN_SCHEDULER_CREDIT2 6
#define XEN_SCHEDULER_ARINC653 7
+#define XEN_SCHEDULER_RT_DS 8
+
/* Set or get info? */
#define XEN_DOMCTL_SCHEDOP_putinfo 0
#define XEN_DOMCTL_SCHEDOP_getinfo 1
@@ -368,6 +370,10 @@ struct xen_domctl_scheduler_op {
struct xen_domctl_sched_credit2 {
uint16_t weight;
} credit2;
+ struct xen_domctl_sched_rt{
+ uint32_t period;
+ uint32_t budget;
+ } rt;
I'm not sure if you meant to leave this as "rt" instead of "rtds", but I
don't think we can assume that every other server is going to expose
"period" and "budget": the sEDF scheduler had "slice" instead, for
instance. I would prefer this to be "xen_domctl_sched_rtds".
} u;
};
typedef struct xen_domctl_scheduler_op xen_domctl_scheduler_op_t;
diff --git a/xen/include/public/trace.h b/xen/include/public/trace.h
index cfcf4aa..87340c4 100644
--- a/xen/include/public/trace.h
+++ b/xen/include/public/trace.h
@@ -77,6 +77,7 @@
#define TRC_SCHED_CSCHED2 1
#define TRC_SCHED_SEDF 2
#define TRC_SCHED_ARINC653 3
+#define TRC_SCHED_RT 4
TRC_SCHED_RTDS
-George
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|