Re: [NFS] New version of Linux NFSv3 client is out...

From: Markus Stenberg (mstenber@cc.Helsinki.FI)
Date: Tue Jan 25 2000 - 05:11:24 EST


Trond Myklebust <trond.myklebust@fys.uio.no> writes:
> >>>>> " " == David S Miller <davem@redhat.com> writes:
> > From: Trond Myklebust <trond.myklebust@fys.uio.no> Date: 25
> > Jan 2000 09:55:55 +0100
>
> > Please note that the knfsd server has consistently violated
> > this part of the NFSv2 protocol: knfsd acknowledges a write
> > statement from the client without ensuring that data has
> > been flushed to disk, thus the client is not guaranteed that
> > anything it has written will survive a server failure.
>
> > Come again? I see a nfsd_sync and a write_inode_now there in
> > the knfsd write paths.
> nfsd_sync is only called if the write gathering code is enabled
> (which is never the case at the moment).
>
> You have to explicitly set the 'sync' option in /etc/exports in order
> for the write_inode_now() stuff to be called.
>
> Hence, the default behaviour is to violate the NFSv2 protocol.

Nod, and that isn't very good. Although violating NFSv2 protocol _has_ to
be done if you want to guarantee any(*) performance, it's still bad idea as
default behavior.

>
> Cheers,
> Trond

-Markus

(*) On HP-(S)UX, the default behavior is standard-based and there is
async-writes option. Between HP-(S)UXes, performance increase is roughly
10-fold between sync<>async. I haven't tried it with Linux, but I expect
results to match.

-- 
     /\  	       	       	    			     /\
    /()\          .. Something _is_ out there ..            /()\
   /____\						   /____\
[Not neccessarily anything as friendly as the Illuminati, either ;)]

- 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/



This archive was generated by hypermail 2b29 : Mon Jan 31 2000 - 21:00:14 EST