aboutsummaryrefslogtreecommitdiff
path: root/cddl/usr.sbin/zfsd/(public-mirror)
diff options
context:
space:
mode:
authorRick Macklem <rmacklem@FreeBSD.org>2026-01-21 00:21:52 +0000
committerRick Macklem <rmacklem@FreeBSD.org>2026-01-21 00:21:52 +0000
commitf2155a6fb5681c3dca4524a3b2b862a72218a541 (patch)
tree2497388b7d706ae3b791861eddd82a0421d4feee /cddl/usr.sbin/zfsd/(public-mirror)
parent6bb3f208617b58a54e2204eb31bae3f9a86117a7 (diff)
nfscl: Fix handling of case insensitive file systemsHEADmain
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 'cddl/usr.sbin/zfsd/(public-mirror)')
0 files changed, 0 insertions, 0 deletions