On Mon, 28 Jan 2008 15:10:34 +0100 Andi Kleen <ak@xxxxxxx> wrote: > On Monday 28 January 2008 14:38:57 Alan Cox wrote: > > > Also worse really fixing it would be a major change to the VFS > > > because of the way ->read/write are defined :/ > > > > I don't see a problem there. ->read and ->write update the passed pointer > > which is not the real f_pos anyway. Just the copies need fixing. > > They are effectually doing a decoupled read/modify/write cycle. e.g.: > > A B > > read fpos > > read fpos > > fpos += A fpos += B > write fpos > > > write fpos > > So you get overlapping reads. Probably not good. No unix system I'm aware of cares about the read/write positioning during parallel simultaneous reads or writes, with the exception of O_APPEND which is strictly defined. The problem case is getting fpos != either valid value. - 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