Date: Thu, 19 Dec 1996 11:20:18 -0700 (MST) From: Terry Lambert <terry@lambert.org> To: rminnich@Sarnoff.COM (Ron G. Minnich) Cc: yves@CC.McGill.CA, freebsd-hackers@freebsd.org Subject: Re: Please, tell me I am wrong Message-ID: <199612191820.LAA11849@phaeton.artisoft.com> In-Reply-To: <Pine.SUN.3.91.961219103849.18130B-100000@terra> from "Ron G. Minnich" at Dec 19, 96 11:03:44 am
next in thread | previous in thread | raw e-mail | index | archive | help
> > Hi all, > > - NFS on FreeBSD does not support file locking. Maybe it will in the future > > but it probably won't inter-operate with Sun's. > > you need to distinguish two things. > 1) It is true that > NFS on freebsd does not have a 'lock' protocol compatible with Sun's. > 2) BUT: last time I tried it, sun's lockd etc. didn't work all that well > either. and they never have. Not for lack of trying on sun's part, > it is a hard problem, esp. in a stateless system such as nfs. Bah humbug. 1) The rpc.lockd and rpc.statd currently in the source tree correctly interoperate with Sun's locking implementation. 2) The Sun locking works correctly if you obey order of operation protocols in your client code. If it doesn't work for someone, it's pilot error, not an unclosable hole in the code. 3) The FreeBSD implementation of rpc.lockd (for the NFS server) always returns "success" to the NFS client instead of making local fcntl() calls to assert the locks on the local system on the clients behalf. 4) Patches to do this were submitted, but never integrated. They remain available in the -current list archive for anyone who is interested in integrating them. 5) FreeBSD does not support making client RPC calls to a remote lockd, mostly because there is not a remote lockd to test against, and even if there were, the VOP_ADVLOCK code can not be used in an FS stacking layer to implement NFS client locking until VOP_ADVLOCK is changed, per my suggested patches of June, 1994. This is because NFS client locking requires a local assert/remote veto ordering to ensure that there is not an unrecoverable race condition in lock assertion over the wire. 6) NFS locking is not stateless. Regards, Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199612191820.LAA11849>