Re: [patch 7/8] fdmap v2 - implement sys_socket2

From: Davide Libenzi
Date: Sat Jun 09 2007 - 13:04:30 EST

On Sat, 9 Jun 2007, Al Viro wrote:

> That's simply not true. On the current kernel nothing stops you from e.g.
> picking a random number and using F_DUPFD. Voila - there's your randomized
> descriptor. Portable to earlier kernels.
> Moreover, nonsense^H^H^Hq_fd() can be implemented in userland just fine
> if we allow F_DUPFD to arbitrary number - just pass it a random one *or*
> base chosen like davedel is doing (constant + 20bit random chosen at start
> time).

That does not work. Or better, it works but it forces *huge* fdtables to
be created. To do that, you need "start" to be over NR_FILE, and this
creates an fdtable bigger than NR_FILE ((pointer-size + a-few-bits) *
NR_FILE) propagated down to every app you fork.

- Davide

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at