On Wednesday 08 October 2008 15:48, Hisashi Hifumi wrote: > At 11:35 08/10/08, Nick Piggin wrote: > >On Wednesday 08 October 2008 05:59, Peter Zijlstra wrote: > >> The whole point is that such usage is outside the specification and thus > >> we don't strictly need to fix this. > >> > >> So the question Nick is asking is, do we want to slow down the kernel > >> for a few broken user-space applications. Esp. since the race doesn't > >> affect anybody else except the broken users of the file descriptor. > > > >Right you are. That's the fundamental question. The actual details of > >the fix and how likely the race is don't really matter until we > >answer the first question (except to say that the "fix" is never going > >to be free). > > Simultaneous access by two or more writer can corrupt file content, > so this case needs some locks(flock or fcntl) to preserve synchronization > of file content. This is responsibility of user-space application. Right. > But file->f_pos race issue can occur even if multiple threads just read > simultaneously. I think this is not responsibility of user-space > application. To avoid this currently, an application needs some locks to > protect file offset even if it just read a file. So I think f_pos race > should be fixed. What would they possibly hope to be reading, though? IOW. a read(2) still *writes* to the fpos which userspace is very much aware of, and in exactly the same way as write(2), so userspace should require the same obligations to protect it in both cases I think. If you say they must protect file content for writes, then it is valid to say that they must protect fd data as well (ie. file offset). -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html