[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160405190029.45881537@utopia>
Date: Tue, 5 Apr 2016 19:00:29 +0200
From: luca abeni <luca.abeni@...tn.it>
To: Peter Zijlstra <peterz@...radead.org>
Cc: linux-kernel@...r.kernel.org, Ingo Molnar <mingo@...hat.com>,
Juri Lelli <juri.lelli@....com>
Subject: Re: [RFC v2 3/7] Improve the tracking of active utilisation
Hi Peter,
On Tue, 5 Apr 2016 14:42:18 +0200
Peter Zijlstra <peterz@...radead.org> wrote:
> On Fri, Apr 01, 2016 at 05:12:29PM +0200, Luca Abeni wrote:
> > +static void task_go_inactive(struct task_struct *p)
> > +{
> > + struct sched_dl_entity *dl_se = &p->dl;
> > + struct hrtimer *timer = &dl_se->inactive_timer;
> > + struct dl_rq *dl_rq = dl_rq_of_se(dl_se);
> > + struct rq *rq = rq_of_dl_rq(dl_rq);
> > + ktime_t now, act;
> > + s64 delta;
> > + u64 zerolag_time;
>
> s64 zerolag_time;
Ok.
[...]
> Would something like:
>
> zerolag_time -= rq_clock(rq);
>
> > +
> > + /*
> > + * If the "0-lag time" already passed, decrease the active
> > + * utilization now, instead of starting a timer
> > + */
> > + if (ktime_us_delta(act, now) < 0) {
>
> if (zerolag_time < 0)
>
> > + sub_running_bw(dl_se, dl_rq);
> > + if (!dl_task(p))
> > + __dl_clear_params(p);
> > +
> > + return;
> > + }
> > +
> > + get_task_struct(p);
> > + hrtimer_start(timer, act, HRTIMER_MODE_ABS);
>
> hrtimer_start(timer, ns_to_ktime(zerolag), HRTIMER_MODE_REL);
>
> > +}
>
> Not be simpler ?
I think I blindly copied this code from the deadline timer, but yes,
you are right, I am doing a lot of useless conversions here. I'll fix
this.
Thanks,
Luca
Powered by blists - more mailing lists