Willy Tarreau <[EMAIL PROTECTED]> writes: >(I remember it could not play with registers renaming, etc...).
This has changed in recent gccs. It doesn't force register pairs anymore. Given the code is still not that good, but some of the worst sins are gone > However, I undertand why Ingo chose to use 64 bits. It has the advantage > that the numbers never wrap within 584 years. I'm well aware that it's > very difficult to keep tasks ordered according to a key which can wrap. If you define an appropiate window and use some macros for the comparisons it shouldn't be a big problem. > But if we consider that we don't need to be more precise than the return > value from gettimeofday() that all applications use, gettimeofday() has too strict requirements, that make it unnecessarily slow for this task. > every hour. We may accept to recompute all keys every hour. You don't need to recompute keys; just use careful comparisons using subtractions and a window. TCPs have done that for decades. > Have all keys use 32-bit resolution, and monitor the 32nd bit. All tasks If you're worried about wrapping in one hour why is wrapping in two hours not a problem? I have one request though. If anybody adds anything complicated for this please make it optional so that 64bit platforms are not burdened by it. -Andi - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/