lkml.org 
[lkml]   [2015]   [Dec]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH v5] sched/deadline: fix earliest_dl.next logic
From
Date
Hi,

On 12/03/2015 03:25 AM, Wanpeng Li wrote:
[...]
>> @@ -202,16 +197,18 @@ static void dequeue_pushable_dl_task(struct rq *rq,
>> struct task_struct *p)
>>
>> next_node = rb_next(&p->pushable_dl_tasks);
>> dl_rq->pushable_dl_tasks_leftmost = next_node;
>> + if (next_node)
>> + dl_rq->earliest_dl.next = rb_entry(next_node,
>> + struct task_struct,
>> pushable_dl_tasks)->dl.deadline;
>
> Juri mentioned "updated leftmost", I'm not sure if it means that:
>
> @@ -195,6 +195,9 @@ static void dequeue_pushable_dl_task(struct rq
> *rq, struct task_struct *p)
>
> next_node = rb_next(&p->pushable_dl_tasks);
> dl_rq->pushable_dl_tasks_leftmost = next_node;
> + if (dl_rq->pushable_dl_tasks_leftmost)
> + dl_rq->earliest_dl.next =
> rb_entry(dl_rq->pushable_dl_tasks_leftmost,
> + struct task_struct,
> pushable_dl_tasks)->dl.deadline;
> }
This is basically the same thing I tested (I just used "next_node" instead
of "dl_rq->pushable_dl_tasks_leftmost" because the name is shorter), so I
think it should work.


Luca


\
 
 \ /
  Last update: 2015-12-03 10:01    [W:0.254 / U:0.112 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site