Re: adding proper O_SYNC/O_DSYNC, was Re: O_DIRECT and barriers

From: Ulrich Drepper
Date: Fri Aug 28 2009 - 12:33:48 EST


On 08/28/2009 09:17 AM, Christoph Hellwig wrote:
I'll put it on my todo list.

Any ABI change like this takes a long time to trickle down.

If this is agreed to be the correct approach then adding the O_* definitions earlier is better. Even if it isn't yet implemented. Then, once the kernel side is implemented, programs are ready to use it. I cannot jump the gun and define the flags myself first.


- O_RSYNC basically means we need to commit atime updates before a
read returns, right?

No, that's not it.

O_RSYNC on its own just means the data is successfully transferred to the calling process (always the case).

O_RSYNC|O_DSYNC means that if a read request hits data that is currently in a cache and not yet on the medium, then the write to medium is successful before the read succeeds.

O_RSYNC|O_SYNC means the same plus the integrity of file meta information (access time etc).

--
â Ulrich Drepper â Red Hat, Inc. â 444 Castro St â Mountain View, CA â
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/