Hi all.
New version of my patch collection.
This version includes to main updates: ide-6 and the updated version of
the O(1) scheduler, backp?rted from 2.5 by Robet Love.
Main features: vm-33 + sched-O1-rml + mini-low-latency
Bonus: ide-6 + bproc-3.1.9 + netconsole.
Get it at:
http://giga.cps.unizar.es/~magallon/linux/kernel/2.4.19-pre7-jam4.tar.gz
http://giga.cps.unizar.es/~magallon/linux/kernel/2.4.19-pre7-jam4/
See README for full credits and origins of patches.
Enjoy !!
--
J.A. Magallon # Let the source be with you...
mailto:[email protected]
Mandrake Linux release 8.3 (Cooker) for i586
Linux werewolf 2.4.19-pre7-jam4 #1 SMP lun abr 22 00:52:56 CEST 2002 i686
Hi,
I had two compile problems:
1) sched.c complains about missing local_bh_count, TQUEUE_BH, ...
2) init/do_mounts.c complains about SCHED_YIELD (if initrd is enabled)
The following patch fixes both problems for me.
--nk
diff -ur linux/init/do_mounts.c linux-nk/init/do_mounts.c
--- linux/init/do_mounts.c Sun Apr 21 23:04:20 2002
+++ linux-nk/init/do_mounts.c Sun Apr 21 21:01:41 2002
@@ -775,8 +775,7 @@
pid = kernel_thread(do_linuxrc, "/linuxrc", SIGCHLD);
if (pid > 0) {
while (pid != wait(&i)) {
- current->policy |= SCHED_YIELD;
- schedule();
+ yield();
}
}
diff -ur linux/kernel/sched.c linux-nk/kernel/sched.c
--- linux/kernel/sched.c Sun Apr 21 23:16:06 2002
+++ linux-nk/kernel/sched.c Sun Apr 21 21:24:59 2002
@@ -19,6 +19,7 @@
#include <linux/smp_lock.h>
#include <asm/mmu_context.h>
#include <linux/kernel_stat.h>
+#include <linux/interrupt.h>
/*
* Priority of a process goes from 0 to MAX_PRIO-1. The
--
Key fingerprint = 6C58 F18D 4747 3295 F2DB 15C1 3882 4302 F8B4 C11C
On 2002.04.22 Norbert Kiesel wrote:
>Hi,
>
>I had two compile problems:
>1) sched.c complains about missing local_bh_count, TQUEUE_BH, ...
>2) init/do_mounts.c complains about SCHED_YIELD (if initrd is enabled)
>
>The following patch fixes both problems for me.
>
[...]
Yup, there are files not covered by 20-sched-O1-rml-1.
Fast search:
werewolf:/usr/src/linux# grep -r SCHED_YIELD *
arch/alpha/mm/fault.c: current->policy |= SCHED_YIELD;
arch/mips/mm/fault.c: tsk->policy |= SCHED_YIELD;
arch/ppc/mm/fault.c: current->policy |= SCHED_YIELD;
arch/m68k/mm/fault.c: current->policy |= SCHED_YIELD;
arch/arm/mm/fault-common.c: tsk->policy |= SCHED_YIELD;
arch/sh/mm/fault.c: current->policy |= SCHED_YIELD;
arch/ia64/mm/fault.c: current->policy |= SCHED_YIELD;
arch/mips64/mm/fault.c: tsk->policy |= SCHED_YIELD;
arch/s390/mm/fault.c: tsk->policy |= SCHED_YIELD;
arch/s390x/mm/fault.c: tsk->policy |= SCHED_YIELD;
init/do_mounts.c: current->policy |= SCHED_YIELD;
I will try to make similar changes for those in a -jam5.
Many thanks.
--
J.A. Magallon # Let the source be with you...
mailto:[email protected]
Mandrake Linux release 8.3 (Cooker) for i586
Linux werewolf 2.4.19-pre7-jam4 #1 SMP lun abr 22 00:52:56 CEST 2002 i686
On Mon, 2002-04-22 at 03:40, J.A. Magallon wrote:
> >1) sched.c complains about missing local_bh_count, TQUEUE_BH, ...
you need to #include linux/interrupts.h in sched.c
> Yup, there are files not covered by 20-sched-O1-rml-1.
> Fast search:
>
> werewolf:/usr/src/linux# grep -r SCHED_YIELD *
> arch/alpha/mm/fault.c: current->policy |= SCHED_YIELD;
> arch/mips/mm/fault.c: tsk->policy |= SCHED_YIELD;
> arch/ppc/mm/fault.c: current->policy |= SCHED_YIELD;
> arch/m68k/mm/fault.c: current->policy |= SCHED_YIELD;
> arch/arm/mm/fault-common.c: tsk->policy |= SCHED_YIELD;
> arch/sh/mm/fault.c: current->policy |= SCHED_YIELD;
> arch/ia64/mm/fault.c: current->policy |= SCHED_YIELD;
> arch/mips64/mm/fault.c: tsk->policy |= SCHED_YIELD;
> arch/s390/mm/fault.c: tsk->policy |= SCHED_YIELD;
> arch/s390x/mm/fault.c: tsk->policy |= SCHED_YIELD;
> init/do_mounts.c: current->policy |= SCHED_YIELD;
I did not touch the arch-dependent code because there are other changes
the arches require that need to be made ...
Robert Love