Time to try and shut the door on this work. I spent many hours this past weekend converting the SMT (aka hyperthreading) priority support with Nick's sched_domains in 2.6.4-rc1-mm1. The infrastructure of the domains is very interesting and seems nicely extendable. With Zwane and Nick's help I believe this time I've done it the right way without making changes to kernel/sched.c that are too architecture specific . It should be easy to use this for newer SMT designs as they come out with both improved performance and more siblings support.
Let's hope AKPM think's it's worth including in -mm and eventually mainline. Hyperthreading is pretty poorly supported without this, and this would make linux the first OS/kernel that has this support. Since there'll be more and more hyperthreading cpus out there (they're even coming out in laptops now) I think it's very important.
Unfortunately these changes are so dependent on sched_domains that I'll have to completely resync -ck with sched domains... sigh. Oh well that gives me plenty to do to -ck. Since it seems inevitable that it will be merged with mainline it will have to happen sooner or later anyway. Luckily the SCHED_SMT support gained by adding sched_domains is finally paying off with improved performance that I can measure even on a single hyperthreaded cpu. Well done Nick!
I forgot to give benchmark results with the first announcement. How unlike me to not have benchmarks! Anyway a follow up email details the effect of this patch.