Well, I'm running on 3.4 patched with this generic rb tree implementation in the fair scheduler (although these are slightly cleaned up, so I still need to boot this version to make sure there's no last minute snafus). So I finally settled on a mechanism for the type-safety, even though it's a big macro (not my first choice), it's the mechanism that works on all versions of gcc that still matter. This is still preliminary. I have a user-space test program (that just compiles the rbtree.h in userspace) and a test module that I want to refine to do profiling & stress tests so that performance can be easily checked on various architectures & compilers. So here's the outstanding list: * insert_near not finished (low priority) * find_near not yet tested * augmented not yet tested