kernel_samsung_a53x/fs/nfsd
Amir Goldstein 924ad2359b nfsd: use fsnotify group lock helpers
[ Upstream commit b8962a9d8cc2d8c93362e2f684091c79f702f6f3 ]

Before commit 9542e6a643fc6 ("nfsd: Containerise filecache laundrette")
nfsd would close open files in direct reclaim context and that could
cause a deadlock when fsnotify mark allocation went into direct reclaim
and nfsd shrinker tried to free existing fsnotify marks.

To avoid issues like this in future code, set the FSNOTIFY_GROUP_NOFS
flag on nfsd fsnotify group to prevent going into direct reclaim from
fsnotify_add_inode_mark().

Link: https://lore.kernel.org/r/20220422120327.3459282-10-amir73il@gmail.com
Suggested-by: Jan Kara <jack@suse.cz>
Link: https://lore.kernel.org/r/20220321112310.vpr7oxro2xkz5llh@quack3.lan/
Signed-off-by: Amir Goldstein <amir73il@gmail.com>
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-11-19 12:27:55 +01:00
..
acl.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03: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 Import A536BXXU9EXDC 2024-06-15 16:02:09 -03: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: use fsnotify group lock helpers 2024-11-19 12:27:55 +01:00
filecache.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03: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: Rename boot verifier functions 2024-11-19 12:27:52 +01:00
nfs2acl.c SUNRPC: Return true/false (not 1/0) from bool functions 2024-11-19 12:27:54 +01:00
nfs3acl.c SUNRPC: Change return value type of .pc_encode 2024-11-19 12:27:48 +01:00
nfs3proc.c NFSD: COMMIT operations must not return NFS?ERR_INVAL 2024-11-19 12:27:53 +01:00
nfs3xdr.c NFSD: Deprecate NFS_OFFSET_MAX 2024-11-19 12:27:53 +01:00
nfs4acl.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
nfs4callback.c nfsd: rpc_peeraddr2str needs rcu lock 2024-11-19 12:27:39 +01:00
nfs4idmap.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
nfs4layouts.c nfsd: fix using the correct variable for sizeof() 2024-11-19 12:27:54 +01:00
nfs4proc.c NFSD: Fix the behavior of READ near OFFSET_MAX 2024-11-19 12:27:53 +01:00
nfs4recover.c nfsd: Log client tracking type log message as info instead of warning 2024-11-19 12:27:36 +01:00
nfs4state.c NFSD: Clean up _lm_ operation names 2024-11-19 12:27:54 +01:00
nfs4xdr.c nfsd: Add support for the birth time attribute 2024-11-19 12:27:53 +01:00
nfscache.c NFSD: Streamline the rare "found" case 2024-11-19 12:27:53 +01:00
nfsctl.c SUNRPC: Rename svc_close_xprt() 2024-11-19 12:27:54 +01:00
nfsd.h nfsd: Add support for the birth time attribute 2024-11-19 12:27:53 +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: Retry once in nfsd_open on an -EOPENSTALE return 2024-11-19 12:27:52 +01:00
nfssvc.c NFSD: Remove CONFIG_NFSD_V3 2024-11-19 12:27:54 +01:00
nfsxdr.c SUNRPC: Change return value type of .pc_encode 2024-11-19 12:27:48 +01:00
pnfs.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
state.h nfsd4: add refcount for nfsd4_blocked_lock 2024-11-19 12:27:52 +01:00
stats.c nfsd: make nfsd_stats.th_cnt atomic_t 2024-11-19 12:27:50 +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: Trace boot verifier resets 2024-11-19 12:27:52 +01:00
vfs.c NFSD: Remove CONFIG_NFSD_V3 2024-11-19 12:27:54 +01:00
vfs.h NFSD: Remove CONFIG_NFSD_V3 2024-11-19 12:27:54 +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 SUNRPC: Change return value type of .pc_encode 2024-11-19 12:27:48 +01:00
xdr4cb.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00