lkml.org 
[lkml]   [1999]   [Aug]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: 2.2.10-ac<x> / 2.2.11-pre<x> NFS client problem & bugfix
On Thu, Aug 05, 1999 at 03:33:59PM +0200, Trond Myklebust wrote:
> With your test I see both the 30second delay (if you don't access the
> parent directory in any way) and the 1 second delay. No persistent
> negative dentries.
>
> If this is a major problem, I suggest rather that we fine-tune the
> delays, not that we remove support for negative dentry caching. Linus'
> typical example was an NFS-shared /usr/share partition (or any NFSroot
> system): if you have several users searching for a file in such a
> tree, turning off caching of negative dentries can lead to storms of
> unnecessary NFS_LOOKUP calls.

What happens, is that the file is *NEVER* seen, which is clearly a bug.
Don't argue on that, please. (Here: 2.2.10ac8 w/ knfsd-1.4.2).

How about _not_ resetting the timeout on a new lookup which is not performed
actually?

This would not flood the network with unecessary NFS_LOOKUP calls, but with
one every second, regardless whether in the meantime sb. made a cached neg.
dentry lookup or not.

Patch appended.
--
Kurt Garloff <garloff@suse.de> Wuppertal, FRG
PGP2 key: See mail header, key servers Linux kernel development
SuSE GmbH, Nürnberg, FRG SCSI drivers: tmscsim(DC390), DC395
--- linux/fs/nfs/dir.c.orig Sun Jul 4 23:12:23 1999
+++ linux/fs/nfs/dir.c Thu Aug 5 18:50:11 1999
@@ -438,7 +438,7 @@
if (!inode) {
if (nfs_neg_need_reval(dentry))
goto out_bad;
- goto out_valid;
+ goto out_norenew;
}

if (is_bad_inode(inode)) {
@@ -491,6 +491,7 @@

out_valid:
nfs_renew_times(dentry);
+out_norenew:
return 1;
out_bad:
if (dentry->d_parent->d_inode)[unhandled content-type:application/pgp-signature]
\
 
 \ /
  Last update: 2005-03-22 13:53    [W:0.071 / U:0.048 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site