On Tue, 8 Nov 2016 20:02:29 +0000
Juri Lelli <[email protected]> wrote:
[...]
> > > So, it actually matters for next patch,
> > > not here. But, maybe we want to do things clean from start?  
> > You mean, because patch 2/6 adds
> > +       if (hrtimer_active(&p->dl.inactive_timer)) {
> > +               raw_spin_lock_irq(&task_rq(p)->lock);
> > +               sub_running_bw(&p->dl, dl_rq_of_se(&p->dl));
> > +               raw_spin_unlock_irq(&task_rq(p)->lock);
> > +       }
> > in task_dead_dl()? I suspect this hunk is actually unneeded (worse, it
> > is wrong :). I am trying to remember why it is there, but I cannot find
> > any reason... In the next days, I'll run some tests to check if that
> > hunk is actually needed. If yes, then I'll modify patch 1/6 as you
> > suggest; if it is not needed, I'll remove it from patch 2/6 and I'll
> > not do this change to patch 1/6... Is this ok?
> >   
> 
> I guess yes, if we don't need to differentiate.
Ok; so, I ran some tests (and I found some old notes of mine). The
modifications to task_dead_dl() mentioned above are not actually needed;
I added them as a preparation for a change needed by patch 3... But I
now think this was an error; I am reworking this part of the code
(removing changes from task_dead_dl() and adding a "p->state == TASK_DEAD"
check in the inactive timer handler).

I'll post an update for patches 2 and 3 in few days, after I finish
some more tests.



                                Luca

> Maybe just add a comment as I  am saying above?
> 
> Thanks,
> 
> - Juri

Reply via email to