Re: [BUG: NULL pointer dereference] cgroups and RT schedulinginteract badly.

From: Peter Zijlstra
Date: Mon Jun 16 2008 - 06:34:34 EST


On Sun, 2008-06-15 at 00:26 +0200, Daniel K. wrote:
> I get the following on the latest Linus git tree.
>
> Testcase:
>
> mkdir /dev/cgroup
> mount -t cgroup -o cpu,cpuset cgroup /dev/cgroup
>
> mkdir -p /dev/cgroup/burn/oops
> cd /dev/cgroup/burn
>
> echo 3 > cpuset.cpus
> echo 0 > cpuset.mems
> echo 1000000 > cpu.rt_period_us
> echo 940000 > cpu.rt_runtime_us
>
> echo 3 > oops/cpuset.cpus
> echo 0 > oops/cpuset.mems
> echo 100000 > oops/cpu.rt_period_us
> echo 4000 > oops/cpu.rt_runtime_us
>
> echo $$ > oops/tasks
> schedtool -R -p 1 -e burnP6
>
> And then it breaks into the pieces below, as captured by netconsole.

Excellent report, thanks!


Does the below work for you?


Signed-off-by: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
---
Index: linux-2.6/kernel/sched.c
===================================================================
--- linux-2.6.orig/kernel/sched.c
+++ linux-2.6/kernel/sched.c
@@ -7784,7 +7784,6 @@ static void init_tg_rt_entry(struct task
else
rt_se->rt_rq = parent->my_q;

- rt_se->rt_rq = &rq->rt;
rt_se->my_q = rt_rq;
rt_se->parent = parent;
INIT_LIST_HEAD(&rt_se->run_list);

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/