Messages in this thread | | | From | Neil Brown <> | Date | Tue, 27 Jul 2004 09:00:58 +1000 | Subject | Re: ext3 and SPEC SFS Run rules. |
| |
On Monday July 26, akpm@osdl.org wrote: > > 2. For NFS Version 3, the server adheres to the protocol specification. > > In particular the requirement that for STABLE write requests and COMMIT > > operations the NFS server must not reply to the NFS client before any > > modified file system data or metadata, with the exception of access times, > > are written to stable storage for that specific or related operation. See > > RFC 1813, NFSv3 protocol specification for a definition of STABLE and > > COMMIT for NFS write requests.
Providing you use the "sync" export option, the Linux kNFSd should meet this requirement.
> > 3. For NFS Version 3, operations which are specified to return wcc data > > must, in all cases, return TRUE and the correct attribute data. Those > > operations are: > > > > NFS Version 3 > > SETATTR > > READLINK > > CREATE > > MKDIR > > SYMLINK > > MKNOD > > REMOVE > > RMDIR > > RENAME > > LINK > > To confirm this we'd need to undertake an audit of the server > implementation, and we'll need to ask Neil about it.
To help with the audit: the wcc data is set by "fh_unlock". i.e. when a filehandle is unlocked (up(i_sem)) a copy of the state information is taken and included where appropriate in the reply.
The only place that I am aware of where we *do*not* return wcc data is for the WRITE request (which you have not listed). As the underlying filesystem is left to do whatever locking it thinks is appropriate, and vfs_write does none, nfsd is not in a position to lock it itself against sys_write and so cannot record before and after stat information that is atomic w.r.t the update.
NeilBrown - 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/
| |