Kyle Moffett <[EMAIL PROTECTED]> writes: > Tommy Reynolds wrote: > > Then it is broken in several ways. > > > > First, file systems are not required to implement ".." (only "." is > > magical, ".." is a courtesy). > > On Mar 24, 2005, at 14:59, H. Peter Anvin wrote: > > Doesn't have anything to do with sorting order or US-ASCII, it has to > > do with readdir order. If nothing else, it would be highly surprising > > if "." and ".." weren't first; it's certainly a de facto standard, if > > not de jure. > > IMHO, this is one of those cases where "Be liberal in what you accept > and strict in what you emit" applies strongly. New filesystems should > probably always emit "." and ".." in that order with sane behavior, > and new programs should probably be able to handle it if they don't. I > would add ".." and "." to squashfs, just so that it acts like the rest > of the filesystems on the planet, even if it has to emulate them > internally. OTOH, I think that the default behavior of find is broken > and should probably be fixed, maybe by making the default use the full > readdir and optionally allowing a -fast option that optimizes the > search using such tricks.
Find is doing a full readdir. It just looks at the link count of the directory it is doing the readdir on and if it is the minimal unix link count of 2 it knows it does not have to stat directory entries to see if they are directories. As I recall there is also special handling in find for link count of 1 to automatically handle filesystems that don't follow the normal unix conventions so every directory entry must be stated. Eric - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/