Messages in this thread | | | From | Denys Vlasenko <> | Subject | Re: F_DUPFD_CLOEXEC implementation | Date | Sun, 30 Sep 2007 01:31:49 +0100 |
| |
Hi Ulrich,
On Friday 28 September 2007 18:34, Ulrich Drepper wrote: > One more small change to extend the availability of creation of > file descriptors with FD_CLOEXEC set. Adding a new command to > fcntl() requires no new system call and the overall impact on > code size if minimal.
Tangential question: do you have any idea how userspace can safely do nonblocking read or write on a potentially-shared fd?
IIUC, currently it cannot be done without races:
old_flags = fcntl(fd, F_GETFL); ...other process may change flags!... fcntl(fd, F_SETFL, old_flags | O_NONBLOCK); read(fd, ...) ...other process may see flags changed under its feet!... fcntl(fd, F_SETFL, old_flags);
Can this be fixed? -- vda - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |