[patch] voluntary-preempt-2.6.9-rc1-bk12-R7

From: Ingo Molnar
Date: Tue Sep 07 2004 - 04:30:07 EST



i've ported the VP patch to x64. I havent boot-tested it, but it
compiles cleanly and it might even boot:

http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc1-bk12-R7

Caveats: normal kernel with PREEMPT, PREEMPT_VOLUNTARY, PREEMPT_SOFTIRQS
and PREEMPT_HARDIRQS disabled should work just fine.

A kernel with PREEMPT=y and PREEMPT_VOLUNTARY=y ought to work too - with
a smaller probability though. PREEMPT_SOFTIRQS=y should be the next step
- this one might work too. (PREEMPT_HARDIRQS=y doesnt do anything on x64
yet, because i havent changed the irq code. I'd like to keep non-x86
changes small, unless a developer picks it up - like it happened for the
ppc and ppc64 port of the VP patch.)

PREEMPT_TIMING=y might work too if the previous ones worked. The most
problematic one is probably LATENCY_TRACE=y - i've added the proper
mcount assembly code but mostly blindly. It does compile.

so please try this kernel on real hw and try to figure out step by step
at which stage in the following order of parameters it breaks:

PREEMPT=y
PREEMPT_VOLUNTARY=y
PREEMPT_SOFTIRQS=y
PREEMPT_TIMING=y
LATENCY_TRACE=y

(when enabling a new option in this sequence keep all the previous
options enabled.)

Worst-case it already breaks with all these options disabled - in this
case please double-check whether vanilla -bk12 x64 boots fine with the
same .config.

Best-case it works fine with all options enabled - quite unlikely.

If it breaks it will break early and hard during bootup, so data is
probably not at risk - but be careful nevertheless.

to get a 2.6.9-rc1-bk12 kernel the patching order is:

http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2
+ http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.9-rc1.bz2
+ http://redhat.com/~mingo/voluntary-preempt/patch-2.6.9-rc1-bk12.bz2

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