From 799262d12ab2fadd3abd61c300763e793b52fbb1 Mon Sep 17 00:00:00 2001 From: George Dunlap Date: Sat, 23 Jul 2011 09:00:57 +0100 Subject: [PATCH] xen: Fix sedf scheduler Update the sedf scheduler to be compatible with the most recent generic scheduler interface changes. Signed-off-by: George Dunlap xen-unstable changeset: 23732:3795d79c740b xen-unstable date: Thu Jul 21 14:35:31 2011 +0100 --- xen/common/sched_sedf.c | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/xen/common/sched_sedf.c b/xen/common/sched_sedf.c index 4d95753a9e..70a1bc8056 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,