[PATCH] updated 2.4 O(1) scheduler patches

From: Robert Love (rml@tech9.net)
Date: Mon Apr 22 2002 - 13:48:02 EST


An updated version of Ingo Molnar's multiqueue O(1) scheduler is
available at:

        http://www.kernel.org/pub/linux/kernel/people/rml/sched

for kernels 2.4.18 and 2.4.19-pre7.

This patch has the following changes over Ingo's -K3 release and what is
in Alan's -ac tree:

        - remove wake_up_sync and friends, we don't need them now
        - abstract away access to need_resched
        - load_balance optimizations and cleanup
        - fix scheduler deadlock on some platforms
        - sched_yield optimizations and cleanup
        - better use of MAX_RT_PRIO define instead of magic numbers
        - misc. code cleanups
        - misc. fixes and optimizations

and most importantly:

       - backport the migration_thread and associated code to 2.4

and also the following changes since my initial patch:

        - include linux/interrupt.h in sched.c
        - use yield() where needed

The migration_thread code allows arch-independent `pushing' of tasks
from one CPU to another. This allows the implementation of a reliable
set_cpus_allowed method for use in the kernel as well as things like
task cpu affinity interfaces.

The migration_thread code used in this patch is actually newer than what
is in 2.5.8 - it contains the interrupt-off fix pointed out by Erich
Focht and William Lee Irwin's new migration_init code.

This is not suggested for inclusion in mainline 2.4. 2.4 != 2.5.

Enjoy,

        Robert Love

-
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/



This archive was generated by hypermail 2b29 : Tue Apr 23 2002 - 22:00:32 EST