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

From: Davide Libenzi
Date: Wed Jun 06 2007 - 19:04:55 EST


On Wed, 6 Jun 2007, Alan Cox wrote:

> > The sys_accept() system call has been modified to return a file
> > descriptor inside the non-sequential area, if the listening fd is.
> > The sys_socketcall() system call has been also changed to support
> > a new SYS_SOCKET2 indentifier.
>
> This still all seems really really ugly. Is there anything wrong with
> throwing all these extra cases out and replacing the entire lot with
>
> prctl(PR_SPARSEFD, 1);
>
> to turn on sparse fd allocation for a process ?

There was a little discussion where I tried to whisper something similar,
but Linus and Uli shot me :) - with good reasons IMO.
You may link to runtimes that are not non-sequentialfd aware, and will
break them.



> Anyone needing to deal with certain special fds will use dup2() anyway so
> a task global switch seems to be cleaner and make the behaviour simply to
> flip on, with no extra calls (and you need to submit man pages for them
> all too), and also more importantly no new glibc stuff should be needed,
> and a process can try to set sparsefd, fail and carry on so its more
> portable and back portable.

Man pages! Damn, I forgot Michael Kerrisk is already waiting for the other
stuff :(



- 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 http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/