On Thursday 19 April 2007, Ingo Molnar wrote: > * Christian Hesse <[EMAIL PROTECTED]> wrote: > > I now got some error message from my system: > > > > http://www.eworm.de/tmp/cfs-suspend.jpg > > ah, this pinpoints a bug: for performance reasons pick_next_task() > assumes that the runqueue is not empty - which is true for schedule(), > but not in migrate_dead_tasks(). Does the patch below fix the crash for > you? > > kernel/sched.c | 2 ++ > 1 file changed, 2 insertions(+) > > Index: linux/kernel/sched.c > =================================================================== > --- linux.orig/kernel/sched.c > +++ linux/kernel/sched.c > @@ -4425,6 +4425,8 @@ static void migrate_dead_tasks(unsigned > struct task_struct *next; > > for (;;) { > + if (!rq->nr_running) > + break; > next = pick_next_task(rq, rq->curr); > if (!next) > break;
Suspend works perfectly with this patch. Thanks a lot and keep up the good work! -- Regards, Chris
signature.asc
Description: This is a digitally signed message part.