aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGeorge Dunlap <george.dunlap@eu.citrix.com>2011-07-23 09:00:57 +0100
committerGeorge Dunlap <george.dunlap@eu.citrix.com>2011-07-23 09:00:57 +0100
commit799262d12ab2fadd3abd61c300763e793b52fbb1 (patch)
tree5b0384f7944f1f8cbe4ee7feb35124312d7a179a
parentbb0053cce42d3846b9dbce5f8156f77c1a2cbd5c (diff)
downloadxen-799262d12ab2fadd3abd61c300763e793b52fbb1.tar.gz
xen-799262d12ab2fadd3abd61c300763e793b52fbb1.tar.bz2
xen-799262d12ab2fadd3abd61c300763e793b52fbb1.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> xen-unstable changeset: 23732:3795d79c740b xen-unstable date: Thu Jul 21 14:35:31 2011 +0100
-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 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,