diff -r 98701b1276c0 xen/common/sched_sedf.c --- a/xen/common/sched_sedf.c Thu Jul 14 09:43:37 2011 +0100 +++ b/xen/common/sched_sedf.c Tue Jul 19 16:44:21 2011 +0100 @@ -331,6 +331,19 @@ static inline void __add_to_runqueue_sor } +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 stru 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,