Re: F_DUPFD_CLOEXEC implementation

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Denys Vlasenko <vda.linux@...>
Cc: Ulrich Drepper <drepper@...>, Linux Kernel Mailing List <linux-kernel@...>, Andrew Morton <akpm@...>
Date: Sunday, September 30, 2007 - 11:15 pm

On Mon, 1 Oct 2007, Denys Vlasenko wrote:


Indeed. You could simulate non-blocking using poll with zero timeout, but 
if another task may read/write on it, your following read/write may end up 
blocking even after a poll returned the required events.
One way to solve this would be some sort of readx/writex where you pass an 
extra flags parameter (this could be done with sys_indirect, assuming 
we'll ever get that mainline) where you specify the non-blocking 
requirement for-this-call, and not as global per-file flag. Then, of 
course, you'll have to modify all the "file->f_flags & O_NONBLOCK" tests 
(and there are many of them) to check for that flag too (that can be a 
per task_struct flag).



- Davide


-
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
F_DUPFD_CLOEXEC implementation, Ulrich Drepper, (Fri Sep 28, 1:34 pm)
Re: F_DUPFD_CLOEXEC implementation, Denys Vlasenko, (Sat Sep 29, 8:31 pm)
Re: F_DUPFD_CLOEXEC implementation, Miquel van Smoorenburg, (Sun Sep 30, 8:59 pm)
Re: F_DUPFD_CLOEXEC implementation, Davide Libenzi, (Sun Sep 30, 7:11 pm)
Re: F_DUPFD_CLOEXEC implementation, Denys Vlasenko, (Sun Sep 30, 7:58 pm)
Re: F_DUPFD_CLOEXEC implementation, Davide Libenzi, (Sun Sep 30, 11:15 pm)
Re: F_DUPFD_CLOEXEC implementation, Denys Vlasenko, (Mon Oct 1, 6:07 am)
Re: F_DUPFD_CLOEXEC implementation, Al Viro, (Mon Oct 1, 2:16 pm)
Re: F_DUPFD_CLOEXEC implementation, Michael Tokarev, (Mon Oct 1, 2:53 pm)
Re: F_DUPFD_CLOEXEC implementation, Denys Vlasenko, (Mon Oct 1, 2:49 pm)
Re: F_DUPFD_CLOEXEC implementation, Davide Libenzi, (Mon Oct 1, 3:04 pm)
Re: F_DUPFD_CLOEXEC implementation, Denys Vlasenko, (Tue Oct 2, 5:28 am)
Re: F_DUPFD_CLOEXEC implementation, Davide Libenzi, (Tue Oct 2, 3:52 pm)
Re: F_DUPFD_CLOEXEC implementation, Davide Libenzi, (Fri Sep 28, 2:19 pm)
Re: F_DUPFD_CLOEXEC implementation, Ulrich Drepper, (Fri Sep 28, 2:23 pm)