Messages in this thread Patch in this message |  | | Subject | Re: [BUG: NULL pointer dereference] cgroups and RT scheduling interact badly. | From | Peter Zijlstra <> | Date | Mon, 16 Jun 2008 12:34:07 +0200 |
| |
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@chello.nl> --- 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);
|  |