linux-mainline/fs
Trond Myklebust fa7ab64f1e NFS/localio: Fix a race in nfs_local_open_fh()
Once the clp->cl_uuid.lock has been dropped, another CPU could come in
and free the struct nfsd_file that was just added. To prevent that from
happening, take the RCU read lock before dropping the spin lock.

Fixes: 86e0041225 ("nfs: cache all open LOCALIO nfsd_file(s) in client")
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Reviewed-by: Mike Snitzer <snitzer@kernel.org>
2025-04-28 09:50:50 -07:00
..
9p
adfs
affs
afs afs: Fix afs_dynroot_readdir() to not use the RCU read lock 2025-04-11 15:24:29 +02:00
autofs
bcachefs bcachefs: Rework fiemap transaction restart handling 2025-04-24 19:10:29 -04:00
befs
bfs
btrfs for-6.15-rc3-tag 2025-04-22 10:22:38 -07:00
cachefiles gcc-15: add '__nonstring' markers to byte arrays 2025-04-20 11:57:54 -07:00
ceph A small CephFS encryption-related fix and a dead code cleanup. 2025-04-25 15:51:28 -07:00
coda
configfs
cramfs
crypto
debugfs
devpts devpts: Fix type for uid and gid params 2025-04-07 15:22:12 +02:00
dlm
ecryptfs
efivarfs
efs
erofs Changes since last update: 2025-04-13 10:52:04 -07:00
exfat
exportfs
ext2
ext4 mm/migrate: fix sleep in atomic for large folios and buffer heads 2025-04-22 18:16:08 +02:00
f2fs
fat
freevxfs
fuse virtiofs: add filesystem context source name check 2025-04-07 15:22:25 +02:00
gfs2 lib/crc: remove CONFIG_LIBCRC32C 2025-04-04 11:31:42 -07:00
hfs Revert "hfs{plus}: add deprecation warning" 2025-04-19 22:48:59 +02:00
hfsplus Revert "hfs{plus}: add deprecation warning" 2025-04-19 22:48:59 +02:00
hostfs
hpfs
hugetlbfs
iomap iomap: skip unnecessary ifs_block_is_uptodate check 2025-04-11 16:02:27 +02:00
isofs isofs: Prevent the use of too small fid 2025-04-04 12:28:32 +02:00
jbd2 fs/jbd2: use sleeping version of __find_get_block() 2025-04-22 18:16:08 +02:00
jffs2 treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
jfs
kernfs
lockd
minix
netfs netfs: Mark __nonstring lookup tables 2025-04-17 10:13:46 +02:00
nfs NFS/localio: Fix a race in nfs_local_open_fh() 2025-04-28 09:50:50 -07:00
nfs_common
nfsd nfsd-6.15 fixes: 2025-04-19 10:38:03 -07:00
nilfs2 treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
nls
notify
ntfs3
ocfs2 fs/ocfs2: use sleeping version of __find_get_block() 2025-04-22 18:16:08 +02:00
omfs
openpromfs
orangefs
overlayfs ovl: remove unused forward declaration 2025-04-07 11:22:49 +02:00
proc
pstore treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
qnx4
qnx6
quota
ramfs
romfs
smb smb client fixes 2025-04-18 20:10:42 -07:00
squashfs
sysfs
tests
tracefs
ubifs
udf
ufs
unicode
vboxsf
verity
xfs XFS: fix zoned gc threshold math for 32-bit arches 2025-04-22 16:03:14 +02:00
zonefs
aio.c
anon_inodes.c
attr.c
backing-file.c
bad_inode.c
binfmt_elf_fdpic.c
binfmt_elf.c
binfmt_flat.c
binfmt_misc.c
binfmt_script.c
bpf_fs_kfuncs.c
buffer.c mm/migrate: fix sleep in atomic for large folios and buffer heads 2025-04-22 18:16:08 +02:00
char_dev.c
compat_binfmt_elf.c
coredump.c
d_path.c
dax.c fs/dax: fix folio splitting issue by resetting old folio order + _nr_pages 2025-04-17 20:10:06 -07:00
dcache.c
direct-io.c
drop_caches.c
eventfd.c
eventpoll.c eventpoll: Set epoll timeout if it's in the future 2025-04-17 09:56:20 +02:00
exec.c
fcntl.c
fhandle.c
file_table.c
file.c fs: fall back to file_ref_put() for non-last reference 2025-04-22 18:16:09 +02:00
filesystems.c
fs_context.c
fs_parser.c
fs_pin.c
fs_struct.c
fs_types.c
fs-writeback.c
fsopen.c
init.c
inode.c
internal.h
ioctl.c
Kconfig nfsd-6.15 fixes: 2025-04-19 10:38:03 -07:00
Kconfig.binfmt
kernel_read_file.c
libfs.c
locks.c
Makefile
mbcache.c
mnt_idmapping.c
mount.h
mpage.c
namei.c fs: ensure that *path_locked*() helpers leave passed path pristine 2025-04-16 09:33:09 +02:00
namespace.c fix a couple of races in MNT_TREE_BENEATH handling by do_move_mount() 2025-04-23 08:06:22 +02:00
nsfs.c
open.c
pidfs.c
pipe.c
pnode.c
pnode.h
posix_acl.c
proc_namespace.c
read_write.c
readdir.c
remap_range.c
select.c
seq_file.c
signalfd.c
splice.c splice: remove duplicate noinline from pipe_clear_nowait 2025-04-25 12:11:56 +02:00
stack.c
stat.c fs: move the bdex_statx call to vfs_getattr_nosec 2025-04-17 10:14:34 +02:00
statfs.c
super.c
sync.c
sysctls.c
timerfd.c
userfaultfd.c
utimes.c
xattr.c fs/xattr: Fix handling of AT_FDCWD in setxattrat(2) and getxattrat(2) 2025-04-25 12:11:56 +02:00