For a directory tree, I could have something like:
Long: Program Files/GNU Emacs/LongFileName.exe
Alias: progra~1/gnuema~1/longfi~1.exe
One can also refer to LongFileName.exe via one of any combination of
aliased directory names:
progra~1/GNU Emacs/LongFileName.exe
Program Files/gnuema~1/longfi~1.exe
This really starts messing with the dcache since there is not a unique
dentry for any filename or directory.
I decided I would try to handle the problem with aliases by not putting
any dentries in the dcache for filenames that are aliases or for filenames
that haven't been found. This way, there would only be one dentry per
directory and file.
I can't even get the simplest case to work. I tried changing vfat_lookup()
to not call d_add(dentry, NULL) when a filename is not found, but this
causes the dcache to think there is a permanent error with this filename.
Is there some way I can either get the dcache to not cache errors?
Does someone have a suggestion of another way to handle these aliases?
- Gordon