lkml.org 
[lkml]   [2008]   [Apr]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
Subjectset_task_rq bug?
For the case of CONFIG_RT_GROUP_SCHED and !CONFIG_FAIR_GROUP_SCHED, this
piece of code seems to be wrong?

/* Change a task's cfs_rq and parent entity if it moves across
* CPUs/groups */
static inline void set_task_rq(struct task_struct *p, unsigned int cpu)
{
#ifdef CONFIG_FAIR_GROUP_SCHED
p->se.cfs_rq = task_group(p)->cfs_rq[cpu];
p->se.parent = task_group(p)->se[cpu];
#endif

#ifdef CONFIG_RT_GROUP_SCHED
p->rt.rt_rq = task_group(p)->rt_rq[cpu];
p->rt.parent = task_group(p)->rt_se[cpu];
#endif
}

Basically for the above config case, a task's p->se.cfs_rq is never set,
which seems to be incorrect, as lot of sched_fair.c (for ex:
enqueue_task_fair) banks on the availability of this information. It should
atleast be set to &rq->cfs?

--
Regards,
vatsa


\
 
 \ /
  Last update: 2008-04-02 09:45    [W:0.273 / U:0.196 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site