[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH RFC v1] xen:rtds: towards work conserving RTDS
> >> @@ -966,8 +1001,16 @@ burn_budget(const struct scheduler *ops, struct >> rt_vcpu *svc, s_time_t now) >> >> if ( svc->cur_budget <= 0 ) >> { >> - svc->cur_budget = 0; >> - __set_bit(__RTDS_depleted, &svc->flags); >> + if ( is_work_conserving(svc) ) >> + { >> + svc->priority_level++; >> > ASSERT(svc->priority_level <= 1); I'm sorry I didn't see this suggestion in previous email. I don't think this assert makes sense. A vcpu that has extratime can have priority_level > 1. For example, a VCPU (period = 100ms, budget = 10ms) runs alone on a core. The VCPU may get its budget replenished for 9 times in a period. the vcpu's priority_level may be 9. The priority_level here also indicates how many times the VCPU gets the extra budget in the current period. > >> + svc->cur_budget = svc->budget; >> + } >> + else >> + { >> + svc->cur_budget = 0; >> + __set_bit(__RTDS_depleted, &svc->flags); >> + } >> } Thanks, Meng ----------- Meng Xu PhD Candidate in Computer and Information Science University of Pennsylvania http://www.cis.upenn.edu/~mengxu/ _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |