Messages in this thread | | | Date | Mon, 3 Jun 2002 18:45:44 -0400 | From | Ion Badulescu <> | Subject | Re: SMB filesystem |
| |
On Sun, 2 Jun 2002 23:34:59 +0200 (CEST), Urban Widmark <urban@teststation.com> wrote:
> Currently autofs has a problem where it won't show the mountpoints of > non-mounted directories, but I think you would run into that problem too. > (short version of the problem: how do you prevent 'ls -l' from mounting > all filesystems in a directory?)
You add the concept of a "light" lookup, and you make path_walk() call this "light" lookup (be that a separate fs method, or a flag passed down to real lookup()) iff the path component being looked up is the last component in the path. A "light" lookup sets a flag in the inode signalling that the inode is incomplete, so cached_lookup() can check this flag and call a "full" lookup() (or perhaps a "full" revalidate()) if necessary.
The actual details need to be thought out a bit more, this is only a general outline. In particular, we need a bullet-proof way to determine when to "upgrade" the inode from "light" to "full".
You then also need to add a "getdents" kind of message to the autofs protocol, and a "light lookup" message (which confirms the existence of the entry, and maybe returns the type of the entry: symlink or directory).
Once all this is done, I'll add support for it in am-utils in a jiffy...
Ion (am-utils co-maintainer)
-- It is better to keep your mouth shut and be thought a fool, than to open it and remove all doubt. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |