On Sat, 2008-01-05 at 05:07 +0100, Michael Kerrisk wrote: > I think you missed my question on O_APPEND though?
Oh, sorry... O_APPEND is supported for normal writes, but not for O_DIRECT writes. The reason for this is that the NFS protocol does not have the equivalent of an atomic 'append()' RPC request. The implication is that in an uncached environment such as O_DIRECT, we cannot guarantee that your write will be appended to the file, since we would have to know the exact file size in order to place the write. If the application does use a private locking scheme, then it can still emulate append() while in O_DIRECT mode by locking the file against concurrent writes before doing lseek(fd,0,SEEK_END)+write(fd,buf). Cheers Trond -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]