kernel_samsung_a53x/fs/nfs
Trond Myklebust 40ec080a9e NFS/pnfs: Fix a live lock between recalled layouts and layoutget
commit 62e2a47ceab8f3f7d2e3f0e03fdd1c5e0059fd8b upstream.

When the server is recalling a layout, we should ignore the count of
outstanding layoutget calls, since the server is expected to return
either NFS4ERR_RECALLCONFLICT or NFS4ERR_RETURNCONFLICT for as long as
the recall is outstanding.
Currently, we may end up livelocking, causing the layout to eventually
be forcibly revoked.

Fixes: bf0291dd2267 ("pNFS: Ensure LAYOUTGET and LAYOUTRETURN are properly serialised")
Cc: stable@vger.kernel.org
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-01-15 16:29:46 +01:00
..
blocklayout SUNRPC: Add xdr_set_scratch_page() and xdr_reset_scratch_buffer() 2024-11-19 12:27:20 +01:00
filelayout SUNRPC: Trace calls to .rpc_call_done 2024-11-19 12:27:47 +01:00
flexfilelayout SUNRPC: Trace calls to .rpc_call_done 2024-11-19 12:27:47 +01:00
cache_lib.c
cache_lib.h
callback.c Revert "nfsd: stop setting ->pg_stats for unused stats" 2024-11-24 00:23:44 +01:00
callback.h
callback_proc.c
callback_xdr.c Revert "SUNRPC: Fix integer overflow in decode_rc_list()" 2024-11-24 00:22:57 +01:00
client.c Revert "NFSv4: Prevent NULL-pointer dereference in nfs42_complete_copies()" 2024-11-24 00:22:57 +01:00
delegation.c Revert "NFS: Avoid unnecessary rescanning of the per-server delegation list" 2024-11-24 00:23:35 +01:00
delegation.h
dir.c SUNRPC: Add xdr_set_scratch_page() and xdr_reset_scratch_buffer() 2024-11-19 12:27:20 +01:00
direct.c nfs: fix UAF in direct writes 2024-11-19 09:22:34 +01:00
dns_resolve.c
dns_resolve.h
export.c nfsd: allow reaping files still under writeback 2024-11-19 12:28:32 +01:00
file.c nfs: don't allow reexport reclaims 2024-11-19 12:27:44 +01:00
fs_context.c
fscache-index.c
fscache.c
fscache.h
getroot.c
inode.c nfs: Fix KMSAN warning in decode_getfattr_attrs() 2024-11-30 02:33:25 +01:00
internal.h nfs: ignore SB_RDONLY when mounting nfs 2024-12-17 13:24:22 +01:00
io.c
iostat.h
Kconfig
Makefile
mount_clnt.c
namespace.c
netns.h nfs: make the rpc_stat per net namespace 2024-11-19 11:32:41 +01:00
nfs.h
nfs2super.c
nfs2xdr.c
nfs3_fs.h
nfs3acl.c
nfs3client.c
nfs3proc.c
nfs3super.c
nfs3xdr.c
nfs4_fs.h
nfs4client.c
nfs4file.c NFSv4.2: Remove ifdef CONFIG_NFSD from NFSv4.2 client SSC code. 2024-11-19 12:27:37 +01:00
nfs4getroot.c
nfs4idmap.c
nfs4idmap.h
nfs4namespace.c
nfs4proc.c NFSv4.0: Fix a use-after-free problem in the asynchronous open() 2024-12-17 13:24:21 +01:00
nfs4renewd.c
nfs4session.c
nfs4session.h
nfs4state.c Revert "nfs: fix memory leak in error path of nfs4_do_reclaim" 2024-11-24 00:23:15 +01:00
nfs4super.c
nfs4sysctl.c
nfs4trace.c
nfs4trace.h
nfs4xdr.c SUNRPC: Add xdr_set_scratch_page() and xdr_reset_scratch_buffer() 2024-11-19 12:27:20 +01:00
nfs42.h NFSv4.2: fix listxattr maximum XDR buffer size 2024-11-19 08:44:57 +01:00
nfs42proc.c Revert "NFSv4: Prevent NULL-pointer dereference in nfs42_complete_copies()" 2024-11-24 00:22:57 +01:00
nfs42xattr.c
nfs42xdr.c SUNRPC: Add xdr_set_scratch_page() and xdr_reset_scratch_buffer() 2024-11-19 12:27:20 +01:00
nfsroot.c NFS: Fix an off by one in root_nfs_cat() 2024-11-19 08:44:57 +01:00
nfstrace.c
nfstrace.h
pagelist.c SUNRPC: Trace calls to .rpc_call_done 2024-11-19 12:27:47 +01:00
pnfs.c NFS/pnfs: Fix a live lock between recalled layouts and layoutget 2025-01-15 16:29:46 +01:00
pnfs.h
pnfs_dev.c
pnfs_nfs.c
proc.c
read.c nfs: Leave pages in the pagecache if readpage failed 2024-11-19 14:19:35 +01:00
super.c Revert "NFSv4: Add missing rescheduling points in nfs_client_return_marked_delegations" 2024-11-24 00:23:38 +01:00
symlink.c
sysctl.c
sysfs.c
sysfs.h
unlink.c
write.c SUNRPC: Trace calls to .rpc_call_done 2024-11-19 12:27:47 +01:00