diff options
| author | Rick Macklem <rmacklem@FreeBSD.org> | 2026-01-21 00:21:52 +0000 |
|---|---|---|
| committer | Rick Macklem <rmacklem@FreeBSD.org> | 2026-01-21 00:21:52 +0000 |
| commit | f2155a6fb5681c3dca4524a3b2b862a72218a541 (patch) | |
| tree | 2497388b7d706ae3b791861eddd82a0421d4feee /gnu/usr.bin/binutils/gasp/ssh:/anongit@git.FreeBSD.org/(public-mirror) | |
| parent | 6bb3f208617b58a54e2204eb31bae3f9a86117a7 (diff) | |
Name caching must be handled somewhat differently
for case insensitive file systems. Negative name
caching does not work and, for rename, all names
associated with the rename'd vnode must be disabled.
For a case insensitive ZFS file system that is exported,
the unpatched code did work, since the change in mtime
or ctime of the directory when other case names were
created or rename'd would disable the false name cache
hit. However, an export of an msdosfs file system
breaks the NFS client, because it only works if ctime/mtime
is changed whenever a name is added/removed. Depending
on what the server file system is, this may not happen,
due to clock resolution or lack of support for these
attributes.
This patch checks to see if the server file system is
case insensitive and modifies the name caching to handle
this.
There is still a problem if a case insensitive file system
is a subtree of a non-case insensitive is exported by the
NFSv4 server. This can be fixed someday, when the NFSv4
client gets support for submounts within the mount.
Suggested by: kib
MFC after: 2 weeks
Diffstat (limited to 'gnu/usr.bin/binutils/gasp/ssh:/anongit@git.FreeBSD.org/(public-mirror)')
0 files changed, 0 insertions, 0 deletions
