From: Juri Lelli <juri.lelli@gmail.com>
To: Peter Zijlstra <peterz@infradead.org>
Cc: tglx@linutronix.de, mingo@redhat.com, rostedt@goodmis.org,
oleg@redhat.com, fweisbec@gmail.com, darren@dvhart.com,
johan.eker@ericsson.com, p.faure@akatech.ch,
linux-kernel@vger.kernel.org, claudio@evidence.eu.com,
michael@amarulasolutions.com, fchecconi@gmail.com,
tommaso.cucinotta@sssup.it, nicola.manica@disi.unitn.it,
luca.abeni@unitn.it, dhaval.giani@gmail.com, hgu1972@gmail.com,
paulmck@linux.vnet.ibm.com, raistlin@linux.it,
insop.song@gmail.com, liming.wang@windriver.com,
jkacur@redhat.com, harald.gustafsson@ericsson.com,
vincent.guittot@linaro.org,
bruce.ashfield@windriver.com--no-chain-reply-to
Subject: Re: [PATCH 03/14] sched: SCHED_DEADLINE structures & implementation.
Date: Mon, 14 Oct 2013 18:58:51 +0200 [thread overview]
Message-ID: <525C22CB.7000200@gmail.com> (raw)
In-Reply-To: <20131014114433.GE3081@twins.programming.kicks-ass.net>
On 10/14/2013 01:44 PM, Peter Zijlstra wrote:
> On Mon, Oct 14, 2013 at 12:43:35PM +0200, Juri Lelli wrote:
>> +static void update_curr_dl(struct rq *rq)
>> +{
>> + struct task_struct *curr = rq->curr;
>> + struct sched_dl_entity *dl_se = &curr->dl;
>> + u64 delta_exec;
>> +
>> + if (!dl_task(curr) || !on_dl_rq(dl_se))
>> + return;
>> +
>> + /*
>> + * Consumed budget is computed considering the time as
>> + * observed by schedulable tasks (excluding time spent
>> + * in hardirq context, etc.)
>> + */
>> + delta_exec = rq->clock_task - curr->se.exec_start;
>
> Oh, cute.. So we compute deadlines from rq->clock but compute runtime
> from rq->clock_task.
>
> So won't that give funny results in that clock_task is generally slower
> than clock; so people get more 'time'.
>
> Maybe there's some illumination on this point further on; I'll continue
> reading.
>
We discussed on this point in the past...
On 04/23/2012 12:31 PM, Peter Zijlstra wrote:> On Fri, 2012-04-06 at 09:14
+0200, Juri Lelli wrote:
>> + dl_se->deadline = rq->clock + dl_se->dl_deadline;
>
> You might want to use rq->clock_task, this clock excludes times spend in
> hardirq context and steal-time (when paravirt).
>
> Then again, it might not want to use that.. but its something you might
> want to consider and make explicit by means of a comment.
>
On 04/24/2012 08:29 AM, Dario Faggioli wrote:> On Tue, 2012-04-24 at 00:25
+0100, Tommaso Cucinotta wrote:
>>> The idea is that ->clock_task gives the time as observed by schedulable
>>> tasks and excludes other muck.
>>
>> so clock_task might be better to compute the consumed budget at task
>> deschedule, but for setting deadlines one period ahead in the future
>> guess the regular wall-time rq->clock is the one to be used?
>>
> Yep, that was the idea, unless my recollection has completely gone
> flaky! :-P
>
> Perhaps adding a comment saying right this thing above, as Peter
> suggested?
And we kind of agreed on the current use of the different clocks. Do you think
we have to reason (test) more about this? Or do we live with that and see if
something strange happens? (I actually didn't see anything suspiciuos in my
use of the patchset).
Thanks,
- Juri
next prev parent reply other threads:[~2013-10-14 16:58 UTC|newest]
Thread overview: 63+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-10-14 10:43 [PATCH 00/14] sched: SCHED_DEADLINE v8 Juri Lelli
2013-10-14 10:43 ` [PATCH 01/14] sched: add sched_class->task_dead Juri Lelli
2013-10-14 10:43 ` [PATCH 02/14] sched: add extended scheduling interface Juri Lelli
2013-10-14 10:43 ` [PATCH 03/14] sched: SCHED_DEADLINE structures & implementation Juri Lelli
2013-10-14 11:10 ` Peter Zijlstra
2013-10-14 13:05 ` Juri Lelli
2013-10-14 13:51 ` Peter Zijlstra
2013-10-14 11:18 ` Peter Zijlstra
2013-10-14 11:24 ` Peter Zijlstra
2013-10-14 14:36 ` Juri Lelli
2013-10-14 11:33 ` Peter Zijlstra
2013-10-14 16:16 ` Juri Lelli
2013-10-14 16:19 ` Peter Zijlstra
2013-10-14 11:44 ` Peter Zijlstra
2013-10-14 16:58 ` Juri Lelli [this message]
2013-10-14 17:34 ` Peter Zijlstra
2013-10-14 20:48 ` Juri Lelli
2013-10-14 11:49 ` Peter Zijlstra
2013-10-14 20:36 ` Juri Lelli
2013-10-14 11:51 ` Peter Zijlstra
2013-10-14 21:26 ` Juri Lelli
2013-10-14 10:43 ` [PATCH 04/14] sched: SCHED_DEADLINE SMP-related data structures & logic Juri Lelli
2013-10-14 12:03 ` Peter Zijlstra
2013-10-15 9:36 ` Juri Lelli
2013-10-15 10:35 ` Peter Zijlstra
2013-10-15 11:36 ` Juri Lelli
2013-10-17 16:49 ` [tip:sched/core] sched/rt: Add missing rmb() tip-bot for Peter Zijlstra
2013-10-14 10:43 ` [PATCH 05/14] sched: SCHED_DEADLINE avg_update accounting Juri Lelli
2013-10-14 10:43 ` [PATCH 06/14] sched: add period support for -deadline tasks Juri Lelli
2013-10-14 12:07 ` Peter Zijlstra
2013-10-15 8:23 ` Juri Lelli
2013-10-15 8:43 ` Peter Zijlstra
2013-10-14 10:43 ` [PATCH 07/14] sched: add schedstats " Juri Lelli
2013-10-14 12:08 ` Peter Zijlstra
2013-10-15 9:06 ` Juri Lelli
2013-10-14 10:43 ` [PATCH 08/14] sched: add latency tracing " Juri Lelli
2013-10-14 10:43 ` [PATCH 09/14] rtmutex: turn the plist into an rb-tree Juri Lelli
2013-10-14 10:43 ` [PATCH 10/14] sched: drafted deadline inheritance logic Juri Lelli
2013-10-14 10:43 ` [PATCH 11/14] sched: add bandwidth management for sched_dl Juri Lelli
2013-10-14 10:43 ` [PATCH 12/14] sched: make dl_bw a sub-quota of rt_bw Juri Lelli
2013-10-14 14:06 ` Ingo Molnar
2013-10-15 10:00 ` Juri Lelli
2013-10-15 10:26 ` Peter Zijlstra
2013-10-15 11:35 ` Juri Lelli
2013-10-15 12:25 ` Ingo Molnar
2013-10-15 12:35 ` Peter Zijlstra
2013-10-15 13:11 ` Ingo Molnar
2013-10-16 8:59 ` Peter Zijlstra
2013-10-16 9:19 ` Ingo Molnar
2013-10-14 10:43 ` [PATCH 13/14] sched: speed up -dl pushes with a push-heap Juri Lelli
2013-10-14 10:43 ` [PATCH 14/14] sched: add sched_dl documentation Juri Lelli
2013-10-14 10:53 ` [PATCH 00/14] sched: SCHED_DEADLINE v8 Juri Lelli
2013-10-14 12:24 ` Peter Zijlstra
2013-10-14 12:38 ` Ingo Molnar
2013-10-14 13:22 ` Peter Zijlstra
2013-10-14 13:36 ` Ingo Molnar
2013-10-14 13:50 ` Peter Zijlstra
-- strict thread matches above, loose matches on Subject: below --
2013-11-07 13:43 [PATCH 00/14] sched: SCHED_DEADLINE v9 Juri Lelli
2013-11-07 13:43 ` [PATCH 03/14] sched: SCHED_DEADLINE structures & implementation Juri Lelli
2013-11-13 2:31 ` Steven Rostedt
2013-11-13 9:54 ` Juri Lelli
2013-11-20 20:23 ` Steven Rostedt
2013-11-21 14:15 ` Juri Lelli
2013-02-11 18:50 [PATCH 00/14] sched: SCHED_DEADLINE v7 Juri Lelli
2013-02-11 18:50 ` [PATCH 03/14] sched: SCHED_DEADLINE structures & implementation Juri Lelli
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=525C22CB.7000200@gmail.com \
--to=juri.lelli@gmail.com \
--cc=bruce.ashfield@windriver.com--no-chain-reply-to \
--cc=claudio@evidence.eu.com \
--cc=darren@dvhart.com \
--cc=dhaval.giani@gmail.com \
--cc=fchecconi@gmail.com \
--cc=fweisbec@gmail.com \
--cc=harald.gustafsson@ericsson.com \
--cc=hgu1972@gmail.com \
--cc=insop.song@gmail.com \
--cc=jkacur@redhat.com \
--cc=johan.eker@ericsson.com \
--cc=liming.wang@windriver.com \
--cc=linux-kernel@vger.kernel.org \
--cc=luca.abeni@unitn.it \
--cc=michael@amarulasolutions.com \
--cc=mingo@redhat.com \
--cc=nicola.manica@disi.unitn.it \
--cc=oleg@redhat.com \
--cc=p.faure@akatech.ch \
--cc=paulmck@linux.vnet.ibm.com \
--cc=peterz@infradead.org \
--cc=raistlin@linux.it \
--cc=rostedt@goodmis.org \
--cc=tglx@linutronix.de \
--cc=tommaso.cucinotta@sssup.it \
--cc=vincent.guittot@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).