LU-18783 llite: ensure dentry name within ll_namelen
Some of the pjdfstest POSIX filename length tests are failing.
This is due to the test expecting a ENAMETOOLONG error to be
reported instead of the current ENOENT error.
Add a test for the dentry name len to ensure its not longer than
sbi->ll_namelen. pjdfstest is expecting the largest file name size
to be NAME_MAX but newer ZFS versions allow names up to 1024 chars.
Ensure client limits filenames to be within NAME_MAX and OSD limit.
Add a tunable parameter llite.*.namelen_max to set this if needed.
Fixes:
7d197837e0 ("LU-4219 mdd: limit os_namelen to the max of NAME_MAX")
Signed-off-by: James Simmons <jsimmons@infradead.org>
Change-Id: I6bd872d69aca173d61ac55a2f8ffc505efb3f462
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58336
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>