Re: CFS review
From: Andi Kleen
Date: Thu Aug 02 2007 - 05:49:15 EST
Willy Tarreau <w@xxxxxx> 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 majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/