lkml.org 
[lkml]   [2010]   [Apr]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [RFC][PATCH 02/11] sched: SCHED_DEADLINE policy implementation.
From
Date
On Sun, 2010-02-28 at 20:17 +0100, Raistlin wrote:
> +/*
> + * When a -deadline task is queued back on the runqueue, its runtime and
> + * deadline might need updating.
> + *
> + * The policy here is that we update the deadline of the task only if:
> + * - the current deadline is in the past,
> + * - using the remaining remaining with the current deadline would make

"remaining runtime", I presume?

> + * the task exceed its bandwidth.
> + */
> +static void update_dl_entity(struct sched_dl_entity *dl_se)
> +{
> + struct dl_rq *dl_rq = dl_rq_of_se(dl_se);
> + struct rq *rq = rq_of_dl_rq(dl_rq);
> +
> + /*
> + * The arrival of a new task (or of a new task instance) needs
> + * special treatment. The actual scheduling parameters have to be
> + * "renewed" instead of recalculatetd accordingly to the bandwidth
> + * enforcement rule.
> + */
> + if (dl_se->flags & DL_NEW) {
> + setup_new_dl_entity(dl_se);
> + return;
> + }
> +
> + if (dl_time_before(dl_se->deadline, rq->clock))
> + goto update;
> +
> + if (!dl_check_bandwidth(dl_se, rq->clock)) {
> +update:
> + dl_se->deadline = rq->clock + dl_se->dl_deadline;
> + dl_se->runtime = dl_se->dl_runtime;
> + }
> +}

We could write that as:

if (dl_time_before(dl_se, rq->clock) ||
!dl_check_bandwidth(dl_se, rq->clock)) {
/* reset parameters */
}

Also, I was wondering about a more descriptive name for
dl_check_bandwidth(), check _what_ about the bandwidth!?

dl_bandwidth_overflow() perhaps, that would also remove that negation.


\
 
 \ /
  Last update: 2010-04-13 20:25    [W:0.079 / U:9.732 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site