Coda File System

Linux 2.6.x still suffering from NFS "stale" check in namei.c

From: Ivan Popov <pin_at_medic.chalmers.se>
Date: Thu, 15 Apr 2004 09:13:52 +0200
Hello,

I have verified that Linux 2.6.5 contains the "evil" NFS-related code
in fs/namei.c and that removing that code eliminates some obscure problems
with Coda.

The problems I observed with generic 2.4.x kernels and unpatched 2.6.5
are triggerable by running a lot of processes from Coda simultaneously,
which results in consurrent lookups on the same paths.
It can be hard to trigger, one of my clients did not show any signs,
while another one (with a lot better connectivity being the most remarkable
difference) was suffering a lot.

My tests looks like:
-----------------------------------------------------------------------
$ cat | cat | [.... about 100 times ....] | cat |  cat
exec: /XXXXXXXXXXXXXXXXXX: No such file or directory
exec: /XXXXXXXXXXXXXXXXXX: No such file or directory
bash: /YYYYYYYYYYYYYYYYYY/cat: /ZZZZZZZZZZZZZZZZZZZZ/sh: bad interpreter: No such file or directory
$ 
-----------------------------------------------------------------------
where "cat" is a wrapper placed on Coda and running things from Coda
via long absolute pathnames, which I replaced here by XXX YYY ZZZ,
their contents is irrelevant.
The error messages repeat irregular number of times.

Errors are seldom but very annoying, especially e.g. during ./configure
making some tests inadvertently fail...

Applying the attached patch to 2.6.5 eliminates the problem.
As no of my machines is running NFS more than casually, I can not
guarantee it doesn't hurt NFS...
otherwise patched 2.4.x kernels have been in use for more than a year
without problems.

Cheers,
--
Ivan




Received on 2004-04-15 03:20:43