Re: [PATCH, take4] FUTEX : new PRIVATE futexes

Nick Piggin
2007-04-12T01:57:57Z

Eric Dumazet wrote:
> On Wed, 11 Apr 2007 19:23:26 +1000
> Nick Piggin <nickpiggin@yahoo.com.au> 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.

1 extra check versus all that additional argument passing? I don't think it
is conclusive.

--
SUSE Labs, Novell Inc.