Re: [PATCH v2] net: handle error more gracefully in socketpair()

From: Al Viro
Date: Fri Dec 06 2013 - 05:48:14 EST


On Thu, Dec 05, 2013 at 07:43:55PM -0500, David Miller wrote:
> From: Yann Droneaud <ydroneaud@xxxxxxxxxx>
> Date: Fri, 06 Dec 2013 00:15:31 +0100
>
> > AFAIK, using sys_close() seems to be the exception, and writing the file
> > descriptor before installing it is the more or less the norm.
>
> What other system call in the kernel writes a file descriptor's value
> into the address space of a user process before the file descriptor
> is actually usable?
>
> That's really terrible semantically.

What's the problem with that? If nothing else, shared descriptor table is
a lot more visible to other threads than two-element array, most likely
in stack frame of whoever makes that syscall...

As for your question, how about pipe(2)?
--
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/