Re: [git pull] scheduler fixes

Luiz Fernando N. Capitulino
2007-12-04T18:41:43Z

Em Tue, 4 Dec 2007 10:28:51 -0800
Greg KH <greg@kroah.com> escreveu:

| On Tue, Dec 04, 2007 at 05:18:27PM +0100, Ingo Molnar wrote:
| >
| > * Ingo Molnar <mingo@elte.hu> wrote:
| >
| > > The problem is on SMP: if sched_rr_get_interval() gets a task from an
| > > otherwise idle runqueue, then rq->load.weight is 0. Normally
| > > sched_slice() is only used on a busy runqueue. So the correct fixup
| > > site is not in sched_slice() but in sys_sched_rr_get_interval() - i'm
| > > working on the right fix, i hope to be able to send a pull request in
| > > a few minutes.
| >
| > the problem is on UP too - if there are no SCHED_OTHER tasks. I've
| > tested the fix and it solves the problem for various combinations of
| > crash.c. I've updated sched.git, please pull it from:
| >
| > git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched.git
| >
| > It has another commit besides this fix. Thanks,
|
| Can you make up something that I can apply for 2.6.23-stable? or is
| this not an issue on that tree?

FWIW I couldn't reproduce the problem with 2.6.23.9. sched_slice()
is quite different on that kernel and _maybe_ it won't never divide
by zero.

My original report on vendor-sec was wrong. I've said that 2.6.23.9
had the same bug but turns out the kernel I tested had the Ingo's
CFS backport patch applied. I didn't know that, I thought it was a
vanilla kernel.

Btw, I think it's important to release a new CFS backport patch
because maybe some distro is using it (Mandriva stable kernel is
using the CFS backport patch, but we didn't update to latest
version yet).

--
Luiz Fernando N. Capitulino