kernel_samsung_a53x/fs/nfsd
Jeff Layton e234918ef2 nfsd: fix use-after-free in nfsd_file_do_acquire tracepoint
[ Upstream commit bdd6b5624c62d0acd350d07564f1c82fe649235f ]

When we fail to insert into the hashtable with a non-retryable error,
we'll free the object and then goto out_status. If the tracepoint is
enabled, it'll end up accessing the freed object when it tries to
grab the fields out of it.

Set nf to NULL after freeing it to avoid the issue.

Fixes: 243a5263014a ("nfsd: rework hashtable handling in nfsd_do_file_acquire")
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-11-19 12:28:25 +01:00
..
acl.h NFSD: add posix ACLs to struct nfsd_attrs 2024-11-19 12:28:04 +01:00
auth.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
auth.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
blocklayout.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
blocklayoutxdr.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
blocklayoutxdr.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
cache.h nfsd: use DEFINE_SHOW_ATTRIBUTE to define nfsd_reply_cache_stats_fops 2024-11-19 12:28:24 +01:00
current_stateid.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
export.c nfsd: report per-export stats 2024-11-19 12:27:31 +01:00
export.h nfsd: report per-export stats 2024-11-19 12:27:31 +01:00
fault_inject.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
filecache.c nfsd: fix use-after-free in nfsd_file_do_acquire tracepoint 2024-11-19 12:28:25 +01:00
filecache.h nfsd: use DEFINE_SHOW_ATTRIBUTE to define nfsd_file_cache_stats_fops 2024-11-19 12:28:24 +01:00
flexfilelayout.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
flexfilelayoutxdr.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
flexfilelayoutxdr.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
idmap.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Kconfig NFSD: Remove CONFIG_NFSD_V3 2024-11-19 12:27:54 +01:00
lockd.c Keep read and write fds with each nlm_file 2024-11-19 12:27:44 +01:00
Makefile NFSD: Remove CONFIG_NFSD_V3 2024-11-19 12:27:54 +01:00
netns.h NFSD: add shrinker to reap courtesy clients on low memory condition 2024-11-19 12:28:23 +01:00
nfs2acl.c SUNRPC: Parametrize how much of argsize should be zeroed 2024-11-19 12:28:23 +01:00
nfs3acl.c SUNRPC: Parametrize how much of argsize should be zeroed 2024-11-19 12:28:23 +01:00
nfs3proc.c NFSD: Refactor common code out of dirlist helpers 2024-11-19 12:28:23 +01:00
nfs3xdr.c NFSD: Clean up WRITE arg decoders 2024-11-19 12:28:23 +01:00
nfs4acl.c NFSD: add posix ACLs to struct nfsd_attrs 2024-11-19 12:28:04 +01:00
nfs4callback.c nfsd: make nfsd4_run_cb a bool return function 2024-11-19 12:28:24 +01:00
nfs4idmap.c NFSD: move from strlcpy with unused retval to strscpy 2024-11-19 12:28:21 +01:00
nfs4layouts.c NFSD: Add tracepoints to report NFSv4 callback completions 2024-11-19 12:28:22 +01:00
nfs4proc.c NFSD: Cap rsize_bop result based on send buffer size 2024-11-19 12:28:24 +01:00
nfs4recover.c nfsd: Propagate some error code returned by memdup_user() 2024-11-19 12:28:21 +01:00
nfs4state.c nfsd: extra checks when freeing delegation stateids 2024-11-19 12:28:24 +01:00
nfs4xdr.c NFSD: Clean up nfs4svc_encode_compoundres() 2024-11-19 12:28:23 +01:00
nfscache.c nfsd: use DEFINE_SHOW_ATTRIBUTE to define nfsd_reply_cache_stats_fops 2024-11-19 12:28:24 +01:00
nfsctl.c NFSD: unregister shrinker when nfsd_init_net() fails 2024-11-19 12:28:25 +01:00
nfsd.h NFSD: add shrinker to reap courtesy clients on low memory condition 2024-11-19 12:28:23 +01:00
nfsfh.c NFSD: Remove CONFIG_NFSD_V3 2024-11-19 12:27:54 +01:00
nfsfh.h NFSD: Remove CONFIG_NFSD_V3 2024-11-19 12:27:54 +01:00
nfsproc.c NFSD: Refactor common code out of dirlist helpers 2024-11-19 12:28:23 +01:00
nfssvc.c NFSD: move from strlcpy with unused retval to strscpy 2024-11-19 12:28:21 +01:00
nfsxdr.c NFSD: Clean up WRITE arg decoders 2024-11-19 12:28:23 +01:00
pnfs.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
state.h nfsd: make nfsd4_run_cb a bool return function 2024-11-19 12:28:24 +01:00
stats.c nfsd: use DEFINE_PROC_SHOW_ATTRIBUTE to define nfsd_proc_ops 2024-11-19 12:28:24 +01:00
stats.h nfsd: make nfsd_stats.th_cnt atomic_t 2024-11-19 12:27:50 +01:00
trace.c NFSD: Add SPDX header for fs/nfsd/trace.c 2024-11-19 12:27:20 +01:00
trace.h NFSD: Add a mechanism to wait for a DELEGRETURN 2024-11-19 12:28:22 +01:00
vfs.c NFSD: Make nfsd4_remove() wait before returning NFS4ERR_DELAY 2024-11-19 12:28:22 +01:00
vfs.h NFSD: drop fname and flen args from nfsd_create_locked() 2024-11-19 12:28:22 +01:00
xdr.h SUNRPC: Change return value type of .pc_encode 2024-11-19 12:27:48 +01:00
xdr3.h SUNRPC: Change return value type of .pc_encode 2024-11-19 12:27:48 +01:00
xdr4.h NFSD: Pack struct nfsd4_compoundres 2024-11-19 12:28:23 +01:00
xdr4cb.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00