linux-stable/fs/nfsd
Trond Myklebust 2f97a3f974 knfsd: LOOKUP can return an illegal error value
commit e221c45da3 upstream.

The 'NFS error' NFSERR_OPNOTSUPP is not described by any of the official
NFS related RFCs, but appears to have snuck into some older .x files for
NFSv2.
Either way, it is not in RFC1094, RFC1813 or any of the NFSv4 RFCs, so
should not be returned by the knfsd server, and particularly not by the
"LOOKUP" operation.

Instead, let's return NFSERR_STALE, which is more appropriate if the
filesystem encodes the filehandle as FILEID_INVALID.

Cc: stable@vger.kernel.org
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-06-21 14:40:33 +02:00
..
acl.h
auth.c cred: get rid of CONFIG_DEBUG_CREDENTIALS 2023-12-15 14:19:48 -08:00
auth.h
blocklayout.c nfsd: allow layout state to be admin-revoked. 2024-03-01 09:12:22 -05:00
blocklayoutxdr.c NFSD: Make @gdev parameter of ->encode_getdeviceinfo a const pointer 2023-10-16 12:44:29 -04:00
blocklayoutxdr.h NFSD: Make @gdev parameter of ->encode_getdeviceinfo a const pointer 2023-10-16 12:44:29 -04:00
cache.h nfsd: make all of the nfsd stats per-network namespace 2024-03-01 09:12:10 -05:00
current_stateid.h
export.c vfs-6.7.fsid 2023-11-07 12:11:26 -08:00
export.h NFSD: Fix frame size warning in svc_export_parse() 2023-10-16 12:44:39 -04:00
filecache.c NFSD 6.9 Release Notes 2024-03-12 14:27:37 -07:00
filecache.h nfsd: Don't leave work of closing files to a work queue 2024-03-01 09:12:05 -05:00
flexfilelayout.c nfsd: move nfserrno() to vfs.c 2022-11-28 12:54:44 -05:00
flexfilelayoutxdr.c NFSD: Make @gdev parameter of ->encode_getdeviceinfo a const pointer 2023-10-16 12:44:29 -04:00
flexfilelayoutxdr.h NFSD: Make @gdev parameter of ->encode_getdeviceinfo a const pointer 2023-10-16 12:44:29 -04:00
idmap.h
Kconfig nfsd: new Kconfig option for legacy client tracking 2024-01-07 17:54:24 -05:00
lockd.c
Makefile NFSD: introduce netlink stubs 2023-10-16 12:44:09 -04:00
netlink.c NFSD: introduce netlink stubs 2023-10-16 12:44:09 -04:00
netlink.h NFSD: introduce netlink stubs 2023-10-16 12:44:09 -04:00
netns.h nfsd: allow admin-revoked NFSv4.0 state to be freed. 2024-03-01 09:12:21 -05:00
nfs2acl.c NFSD 6.3 Release Notes 2023-02-22 14:21:40 -08:00
nfs3acl.c NFSD 6.3 Release Notes 2023-02-22 14:21:40 -08:00
nfs3proc.c nfsd: Fix NFSv3 atomicity bugs in nfsd_setattr() 2024-03-01 09:12:33 -05:00
nfs3xdr.c nfsd: Fix NFSv3 atomicity bugs in nfsd_setattr() 2024-03-01 09:12:33 -05:00
nfs4acl.c nfsd: inherit required unset default acls from effective set 2023-08-29 17:45:22 -04:00
nfs4callback.c nfsd-6.9 fixes: 2024-04-25 09:31:06 -07:00
nfs4idmap.c SUNRPC: return proper error from get_expiry() 2023-04-26 09:05:00 -04:00
nfs4layouts.c NFSD 6.9 Release Notes 2024-03-12 14:27:37 -07:00
nfs4proc.c nfsd: Fix NFSv3 atomicity bugs in nfsd_setattr() 2024-03-01 09:12:33 -05:00
nfs4recover.c nfsd: new Kconfig option for legacy client tracking 2024-01-07 17:54:24 -05:00
nfs4state.c nfsd-6.9 fixes: 2024-04-06 09:37:50 -07:00
nfs4xdr.c NFSD: Fix nfsd4_encode_fattr4() crasher 2024-04-25 18:06:41 -04:00
nfscache.c nfsd: Simplify the allocation of slab caches in nfsd_drc_slab_create 2024-03-01 09:12:24 -05:00
nfsctl.c nfsd: don't create nfsv4recoverydir in nfsdfs when not used. 2024-05-30 09:44:58 +02:00
nfsd.h NFSD: handle GETATTR conflict with write delegation 2024-03-01 09:12:32 -05:00
nfsfh.c knfsd: LOOKUP can return an illegal error value 2024-06-21 14:40:33 +02:00
nfsfh.h NFSD: Add nfsd4_encode_fattr4_change() 2023-10-16 12:44:14 -04:00
nfsproc.c nfsd: Fix NFSv3 atomicity bugs in nfsd_setattr() 2024-03-01 09:12:33 -05:00
nfssvc.c nfsd: make svc_stat per-network namespace instead of global 2024-03-01 09:12:11 -05:00
nfsxdr.c NFSD: Ensure that xdr_write_pages updates rq_next_page 2023-06-05 09:01:44 -04:00
pnfs.h nfsd: allow layout state to be admin-revoked. 2024-03-01 09:12:22 -05:00
state.h Revert "NFSD: Convert the callback workqueue to use delayed_work" 2024-04-23 20:12:41 -04:00
stats.c nfsd: make svc_stat per-network namespace instead of global 2024-03-01 09:12:11 -05:00
stats.h nfsd: make svc_stat per-network namespace instead of global 2024-03-01 09:12:11 -05:00
trace.c
trace.h tracing: Remove __assign_str_len() 2024-03-18 10:33:05 -04:00
vfs.c nfsd-6.9 fixes: 2024-03-28 14:35:32 -07:00
vfs.h nfsd: Fix NFSv3 atomicity bugs in nfsd_setattr() 2024-03-01 09:12:33 -05:00
xdr.h
xdr3.h nfsd: Fix NFSv3 atomicity bugs in nfsd_setattr() 2024-03-01 09:12:33 -05:00
xdr4.h NFSD: Modify NFSv4 to use nfsd_read_splice_ok() 2024-01-07 17:54:25 -05:00
xdr4cb.h NFSD: add support for CB_GETATTR callback 2024-03-01 09:12:31 -05:00