Re: [patch v2] epoll use a single inode ...

H. Peter Anvin
2007-03-06T16:28:59Z

Eric Dumazet wrote:
>
> For epoll, I suspect this is harmless : Programs dont allocate epolls fd
> every milli second, but at startup only.
>
> For pipes/sockets, using a 64 bits would be problematic, because
> sprintf() uses a divide for each digit. And a divide is slow. Ten
> divides are *very* slow.
>

That's true for *any* sprintf(), though. sprintf() converts all its
arguments to 64 bits.

However, this could be optimized. I think right now sprintf() uses a
generic divide-by-base, but a divide by 8 and 16 can of course be
handled with a shift, and divide by 10 can be replaced with a
multiplication by 0x1999999999999999ULL on most architectures.

-hpa