[OpenAFS-devel] Testing GNU findutils on AFS.... please!

Jeffrey Hutzelman jhutz@cmu.edu
Wed, 19 Mar 2008 16:20:40 -0400


--On Saturday, March 15, 2008 08:36:45 PM +0000 James Youngman 
<jay@gnu.org> wrote:

> First of all, please forgive me for posting to your mailing list
> without first subscribing to it.   Secondly, please CC me on your
> replies since I am not subscribed :)

eh; that's what moderators are for (says the person who is supposed to be 
moderating, but mostly shirks that duty and leaves it to others).

> My question, is, if you build GNU findutils on your system, do the
> -xdev option and the -fstype test work on AFS

I'm sure someone will give this a try and let you know.  Also, I bet if we 
tried really hard, we could get you access to someplace where you can test 
for yourself.

> If you are in a mood to test things though, is oldfind's -noleaf
> option needed to correctly search AFS filesystems?  (without it, find
> assumes that directories with a link count of 2 have no
> subdirectories).

Without testing, yes, it is needed at least some of the time.  That 
assumption is not valid in AFS, and neither is the assumption that when you 
run out of link count you've run out of subdirectories.  The problem here 
is that AFS files can be one of four kinds - files, directories, symlinks, 
and mount points.  A mount point is a reference to the root of another 
volume by name or volume ID.  Mount points look to clients like 
directories, but are not counted in the containing directory's link count, 
since they do not in fact contain a link to that directory.

So, to a program like find, there are effectively two kinds of 
subdirectories -- those that are included in the link count and those that 
are not.  You can't tell in advance which kind you'll see, so a heuristic 
like checking to see if the rule applies to the first directory you 
examine, which probably works fairly well for other filesystems, won't work 
with AFS.

-- Jeff