lkml.org 
[lkml]   [1996]   [Dec]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: NFS Problem in Kernel 2.0.27: inode status not updated
Date
From
On Sat, 28 Dec 1996 10:25:29 PST, Christoph Lameter wrote:
> It first opens a lockfile with a unique name and then links that one
> to the classic /var/spool/mail/username.lock lockfile. Then it checks the
> number of links on that file. If there are two then the lock is
> successful. Problem is Linux fstat call always returns 1 for the number of
> links even though a link() was done immediately prior.

There is nothing in the NFS spec that requires the client to update its
cached link count[*]. So I would assume the author's claim means that this
locking technique `works better over NFS on the systems I tested it on.'

Nevertheless, I guess I'll have to support this in the upcoming NFS
code... For the time being, I suggest exim users apply the following
patch to fs/nfs/dir.c, function nfs_link:

-------- fake patch -----
nfs_lookup_cache_remove(dir, oldinode, NULL);
+ NFS_CACHEINV(oldinode);
iput(oldinode);
-------------------------

IMHO, mounting your mail spool with the noac mount option is not a
very good idea.

Olaf

[*] The NFS spec is deliberately vague about how and to which extent
the client caches information. Vague being an overstatement here.
For those interested, the bare-bones protocol spec is available as
RFC 1094. There's also a (fairly expensive) specification available
from X/Open that also discusses some implementation issues as well as
the side effects on various system calls and utility programs. Some
information about current implementation practice can also be found in
the NFSv3 spec (available as RFC, and as postscript file all over the
net--archie for nfsv3.ps).
--
Olaf Kirch | --- o --- Nous sommes du soleil we love when we play
okir@monad.swb.de | / | \ sol.dhoop.naytheet.ah kin.ir.samse.qurax
For my PGP public key, finger okir@brewhq.swb.de.

\
 
 \ /
  Last update: 2005-03-22 13:38    [W:0.059 / U:0.348 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site