Bug or feature: schedule + 1 task

Tim Hockin (thockin@isunix.it.ilstu.edu)
Sat, 19 Jun 1999 21:45:10 -0500 (CDT)


I'm not sure if this should be classified as a bug or as expected behavior.

If there is exactly 1 task runnable on a system (probably true so long as #
tasks < # cpus), that task will be chosen to run, even if it's goodness is
-1000 or lower. Seeing as it is the only task available, this makes sense,
but on the other hand, by getting a -1000 (or lower) goodness, it is
basically being told NOT to run.

I ran across this while trying to simplify pset (processor binding) for
late 2.2 and 2.3 kernels. If I have one task, and it is bound to CPU 1,
but started running on CPU 2 (pre-bind), it will be rescheduled on CPU 2,
regardless of the fact that goodness() detected this and returned -1000.

Should this be fixed, or should it be left as is?

Tim

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