From: Eric Dumazet <redacted>
Date: Tue, 07 Aug 2012 22:45:47 +0200
[PATCH v2 net-next] fib: use __fls() on non null argument
__fls(x) is a bit faster than fls(x), granted we know x is non null.
As Ben Hutchings pointed out, fls(x) = __fls(x) + 1
Signed-off-by: Eric Dumazet <edumazet@google.com>
Cc: Ben Hutchings <redacted>
Applied.
This is, btw, the most expensive part of fib_trie on sparc64 since we
really don't have a universal way to do this in a hardware instruction
and therefore we end up with the branch-heavy software implementation :-/
So if anyone can come up with a way to eliminate this fls() entirely,
you will be my hero.