On 08/02/2007 05:03 PM, Ingo Molnar wrote:
* Martin Roehricht <ml@felicis.org> wrote:
On 08/02/2007 01:40 PM, Ingo Molnar wrote:
>in the SMP migration code, the 'old scheduler' indeed picks the lowest
>priority one, _except_ if that task is running on another CPU or is too
>'cache hot':
But why is it, that the scheduler picks the lowest priority one? I
thought sched_find_first_bit() picks the index of the lowest order bit
in the bitmap and thus the highest priority job. Is that wrong? What
needs to be changed to let the scheduler pick the highest priority
task from a given runqueue? I am very confused ...
it first picks the lowest index (i.e. the highest priority active
priority-queue), but within those tasks (each task in that priority
queue has equal priority) the load-balancer has freedom to pick any.
Based on performance data we went for picking from the tail of the
queue.
That's fine with me, that within the same priority-queue any task can be
chosen. But assume two tasks with highly different priorities, such as
105 and 135 are scheduled on the same processor and one of them is now
to be migrated -- shouldn't be the queue with task P=105 considered
first for migration by this code?
Both tasks would use different queues with their own linked lists, right?
Martin
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]