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

From: H. Peter Anvin
Date: Mon Mar 05 2007 - 21:27:18 EST


Linus Torvalds wrote:

Since this is not actually *used* for anything but showing the fd's in /proc/<pid>/fd/ etc, no. In fact, an integer will wrap a *lot* less than a kernel data structure will be re-used, so even with the simple "wraps every 4G uses", you're still better off.


... and if that worries you, use a 64-bit counter. They're cheap (compared to an sprintf), and even if they advance once a nanosecond they won't wrap around for over 584 years.

IOW, if the thing actually _mattered_ we should use some bitmap allocator or similar (eg pidmaps etc), but with something where the only reason really is as a visible indicator of difference for a user that happens to look, simple-and-stupid is better.

That only makes sense if it matters that the numbers are kept small. This is in fact a highly suboptimal constraint, as it is almost guaranteed to create wraparounds much sooner, but there are situations in which that's the only option, e.g. for pty number allocations due to glibc braindamage.

-hpa
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/