Subject: Re: [PATCH net-next-2.6] ipv6: Use __fls() instead of fls() in __ipv6_addr_diff().

From: YOSHIFUJI Hideaki <[email-masked]>
Date: Tue, 30 Mar 2010 00:49:07 +0900

Sorry, I withdraw this because this is incorrect;
__fls() returns fls() - 1.

--yoshfuji

(2010/03/26 17:01), YOSHIFUJI Hideaki wrote:
> Because we have ensured that the argument is non-zero,
> it is better to use __fls() and generate better code.
> 
> Signed-off-by: YOSHIFUJI Hideaki<[email-masked]>
> ---
>   include/net/ipv6.h |    2 +-
>   1 files changed, 1 insertions(+), 1 deletions(-)
> 
> diff --git a/include/net/ipv6.h b/include/net/ipv6.h
> index e72fb10..619ab34 100644
> --- a/include/net/ipv6.h
> +++ b/include/net/ipv6.h
> @@ -422,7 +422,7 @@ static inline int __ipv6_addr_diff(const void *token1, const void *token2, int a
>   	for (i = 0; i<  addrlen; i++) {
>   		__be32 xb = a1[i] ^ a2[i];
>   		if (xb)
> -			return i * 32 + 32 - fls(ntohl(xb));
> +			return i * 32 + 32 - __fls(ntohl(xb));
>   	}
> 
>   	/*