[Devel] Re: [PATCH] fdset's leakage

Eric Dumazet dada1 at cosmosbay.com
Tue Jul 11 10:26:36 PDT 2006


On Tuesday 11 July 2006 18:13, Vadim Lobanov wrote:
> > unsinged long round_up_pow_of_two(unsigned long x)
> > {
> >   unsigned long res = 1 << BITS_PER_LONG;
>
> You'll get a zero here. Should be 1 << (BITS_PER_LONG - 1).
>

Nope. It wont work on 64 bits platform :)

You want  1UL << (BITS_PER_LONG - 1).

But the roundup_pow_of_two() function is already defined in 
include/linux/kernel.h and uses fls_long()

Eric




More information about the Devel mailing list