> Trond Myklebust wrote:
>> As long as we violate the synchronicity assumption strict
>> adherence to the rule of atomicity of writes becomes a largely
>> academic issue.
> They're different things.
If you cannot guarantee stability of writes, then surely atomicity
cannot be guaranteed either. What if the server crashes after sending
the NFS_OK, but before the data is committed?
> Regardless of committing to stable storage, write atomicity can
> be used for database synchronisation between clients. Of
> course any sensible client would synchronise on a single
> byte... I don't know if any real applications depend on atomic
> writes.
As long as the operation read+write is not atomic, can you really
implement such a scheme?
As Alan pointed out, link() and mkdir() are more useful for this sort
of thing.
>> For NFSv3, things are of course different, since there the
>> NFS_COMMIT instruction exists in order to trigger the flushing
>> to disk.
> And atomicity isn't specified for NFSv3 either.
Only if you specify stable writes (FILE_SYNC) in which case the NFSv2
rules are supposed to apply.
Cheers,
Trond
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/