aboutsummaryrefslogtreecommitdiffstats
path: root/xen/common/sched_sedf.c
diff options
context:
space:
mode:
authorGeorge Dunlap <george.dunlap@eu.citrix.com>2011-07-21 14:35:31 +0100
committerGeorge Dunlap <george.dunlap@eu.citrix.com>2011-07-21 14:35:31 +0100
commit59eb07215bbdff55e701999b9d0bb0af4e4f30ef (patch)
tree1274868f02cf113eb23275013d92f16dc657214d /xen/common/sched_sedf.c
parent9b68307fc880ead1800a7a989472a073ef74615b (diff)
downloadxen-59eb07215bbdff55e701999b9d0bb0af4e4f30ef.tar.gz
xen-59eb07215bbdff55e701999b9d0bb0af4e4f30ef.tar.bz2
xen-59eb07215bbdff55e701999b9d0bb0af4e4f30ef.zip
xen: Fix sedf scheduler
Update the sedf scheduler to be compatible with the most recent generic scheduler interface changes. Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Diffstat (limited to 'xen/common/sched_sedf.c')
-rw-r--r--xen/common/sched_sedf.c25
1 files changed, 15 insertions, 10 deletions
diff --git a/xen/common/sched_sedf.c b/xen/common/sched_sedf.c
index 37fd3b56f8..8a16c66298 100644
--- a/xen/common/sched_sedf.c
+++ b/xen/common/sched_sedf.c
@@ -331,6 +331,19 @@ static inline void __add_to_runqueue_sort(struct vcpu *v)
}
+static void sedf_insert_vcpu(const struct scheduler *ops, struct vcpu *v)
+{
+ if ( !is_idle_vcpu(v) )
+ {
+ extraq_check(v);
+ }
+ else
+ {
+ EDOM_INFO(v)->deadl_abs = 0;
+ EDOM_INFO(v)->status &= ~SEDF_ASLEEP;
+ }
+}
+
static void *sedf_alloc_vdata(const struct scheduler *ops, struct vcpu *v, void *dd)
{
struct sedf_vcpu_info *inf;
@@ -365,16 +378,6 @@ static void *sedf_alloc_vdata(const struct scheduler *ops, struct vcpu *v, void
INIT_LIST_HEAD(&(inf->list));
INIT_LIST_HEAD(&(inf->extralist[EXTRA_PEN_Q]));
INIT_LIST_HEAD(&(inf->extralist[EXTRA_UTIL_Q]));
-
- if ( !is_idle_vcpu(v) )
- {
- extraq_check(v);
- }
- else
- {
- inf->deadl_abs = 0;
- inf->status &= ~SEDF_ASLEEP;
- }
return inf;
}
@@ -1498,6 +1501,8 @@ const struct scheduler sched_sedf_def = {
.init_domain = sedf_init_domain,
.destroy_domain = sedf_destroy_domain,
+ .insert_vcpu = sedf_insert_vcpu,
+
.alloc_vdata = sedf_alloc_vdata,
.free_vdata = sedf_free_vdata,
.alloc_pdata = sedf_alloc_pdata,