Messages in this thread | | | Date | Wed, 7 Aug 2002 20:13:01 +0200 | Subject | RE: O_SYNC option doesn't work (2.4.18-3) | From | Trond Myklebust <> |
| |
>>>>> " " == Gregory Giguashvili <Gregoryg@ParadigmGeo.com> writes:
> Well, this is the way it's been working on all UN*X platforms I > know. In fact, we came across this problem with NFS clients > being unable to synchronize on Linux.
Sorry. AFAICS O_SYNC only affects writes (just like we do).
As for reads: all commercial NFS clients I know of will check data cache consistency on open(). They will assume that they can cache attributes and data as per the documentation in 'man 5 nfs' (although you can turn this off by using the 'noac' mount option).
Furthermore, even with 'noac' they *all* have problems with races in the sort of scenario you describe because there is no atomic GETATTR+READ operation.
Bottom line: If you want the sort of data cache consistency you are describing, you *have* to use file locking.
Cheers, Trond - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |