diff options
author | Chuck Lever <chuck.lever@oracle.com> | 2024-09-05 22:09:40 +0300 |
---|---|---|
committer | Anna Schumaker <anna.schumaker@oracle.com> | 2024-09-23 22:03:30 +0300 |
commit | 7c0b07b49b2da108438e2504452effe0e6cbb764 (patch) | |
tree | 71f61d67ee5f847f95985c42ee2212f0470e9c6d /rust/helpers/task.c | |
parent | b0d87dbd8bd311d4126f5b34a8494043c487695f (diff) | |
download | linux-7c0b07b49b2da108438e2504452effe0e6cbb764.tar.xz |
NFSD: Avoid using rqstp->rq_vers in nfsd_set_fh_dentry()
Currently, fh_verify() makes some daring assumptions about which
version of file handle the caller wants, based on the things it can
find in the passed-in rqstp. The about-to-be-introduced LOCALIO use
case sometimes has no svc_rqst context, so this logic won't work in
that case.
Instead, examine the passed-in file handle. It's .max_size field
should carry information to allow nfsd_set_fh_dentry() to initialize
the file handle appropriately.
The file handle used by lockd and the one created by write_filehandle
never need any of the version-specific fields (which affect things
like write and getattr requests and pre/post attributes).
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Mike Snitzer <snitzer@kernel.org>
Reviewed-by: Jeff Layton <jlayton@kernel.org>
Reviewed-by: NeilBrown <neilb@suse.de>
Signed-off-by: Anna Schumaker <anna.schumaker@oracle.com>
Diffstat (limited to 'rust/helpers/task.c')
0 files changed, 0 insertions, 0 deletions