On Wed, 11 Apr 2007 19:23:26 +1000
Nick Piggin <nickpiggin@xxxxxxxxxxxx> wrote:
As this external thing certainly is not doing the check itself, to be on the safe side we should enforce it in get_futex_key(). I agree with you : If we want to maximize performance, we could say : The check *must* be done by the caller.
Well we _control_ the API, so let's make it as clean and performant as possible
from the start.
Take a look at do_futex().
Adding checks in callers just increase code size. I tried this got only bad results.
This would speedup only the slow path (ie when some user code want to give us non aligned addrs)
A single factorized check is cleaner and not slower, since we reduce icache pressure.