linux-kernelorg-stable/fs/nfs
Jonathan Curley f15ebc876f NFSv4/flexfiles: Fix layout merge mirror check.
[ Upstream commit dd2fa82473 ]

Typo in ff_lseg_match_mirrors makes the diff ineffective. This results
in merge happening all the time. Merge happening all the time is
problematic because it marks lsegs invalid. Marking lsegs invalid
causes all outstanding IO to get restarted with EAGAIN and connections
to get closed.

Closing connections constantly triggers race conditions in the RDMA
implementation...

Fixes: 660d1eb223 ("pNFS/flexfile: Don't merge layout segments if the mirrors don't match")
Signed-off-by: Jonathan Curley <jcurley@purestorage.com>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-09-19 16:35:44 +02:00
..
blocklayout pNFS: Fix uninited ptr deref in block/scsi layout 2025-08-20 18:30:50 +02:00
filelayout nfs: don't share pNFS DS connections between net namespaces 2025-06-04 14:43:52 +02:00
flexfilelayout NFSv4/flexfiles: Fix layout merge mirror check. 2025-09-19 16:35:44 +02:00
Kconfig nfs: add missing selections of CONFIG_CRC32 2025-04-25 10:47:50 +02:00
Makefile
cache_lib.c
cache_lib.h
callback.c
callback.h
callback_proc.c
callback_xdr.c
client.c NFSv4: Clear the NFS_CAP_XATTR flag if not supported by the server 2025-09-19 16:35:43 +02:00
delegation.c NFSv4: Check for delegation validity in nfs_start_delegation_return_locked() 2025-05-29 11:02:03 +02:00
delegation.h NFSv4: Fix a deadlock when recovering state on a sillyrenamed file 2025-03-07 18:25:27 +01:00
dir.c NFS: Fix wakeup of __nfs_lookup_revalidate() in unblock_revalidate() 2025-08-15 12:14:04 +02:00
direct.c fs/nfs/io: make nfs_start_io_*() killable 2025-09-19 16:35:44 +02:00
dns_resolve.c
dns_resolve.h
export.c NFS: Fix filehandle bounds checking in nfs_fh_to_dentry() 2025-08-15 12:14:04 +02:00
file.c NFS: nfs_invalidate_folio() must observe the offset and size arguments 2025-09-19 16:35:44 +02:00
fs_context.c
fscache.c nfs: Fix oops in nfs_netfs_init_request() when copying to cache 2025-01-17 13:40:34 +01:00
fscache.h
getroot.c
inode.c NFS: Serialise O_DIRECT i/o and truncate() 2025-09-19 16:35:44 +02:00
internal.h NFS: Serialise O_DIRECT i/o and truncate() 2025-09-19 16:35:44 +02:00
io.c NFS: Serialise O_DIRECT i/o and truncate() 2025-09-19 16:35:44 +02:00
iostat.h
localio.c nfs/localio: restore creds before releasing pageio data 2025-09-19 16:35:43 +02:00
mount_clnt.c
namespace.c
netns.h
nfs.h
nfs2super.c
nfs2xdr.c
nfs3_fs.h
nfs3acl.c
nfs3client.c
nfs3proc.c NFS: Don't allow waiting for exiting tasks 2025-05-29 11:02:03 +02:00
nfs3super.c
nfs3xdr.c
nfs4_fs.h
nfs4client.c NFS: Fix the setting of capabilities when automounting a new filesystem 2025-08-20 18:30:14 +02:00
nfs4file.c NFSv4.2: Serialise O_DIRECT i/o and clone range 2025-09-19 16:35:44 +02:00
nfs4getroot.c
nfs4idmap.c
nfs4idmap.h
nfs4namespace.c
nfs4proc.c NFSv4: Clear NFS_CAP_OPEN_XOR and NFS_CAP_DELEGTIME if not supported 2025-09-19 16:35:43 +02:00
nfs4renewd.c
nfs4session.c
nfs4session.h nfs: add missing selections of CONFIG_CRC32 2025-04-25 10:47:50 +02:00
nfs4state.c NFSv4: Treat ENETUNREACH errors as fatal for state recovery 2025-05-29 11:02:06 +02:00
nfs4super.c
nfs4sysctl.c
nfs4trace.c
nfs4trace.h
nfs4xdr.c NFS: fix open_owner_id_maxsz and related fields. 2025-04-10 14:39:24 +02:00
nfs42.h
nfs42proc.c NFSv4.2: Serialise O_DIRECT i/o and copy range 2025-09-19 16:35:44 +02:00
nfs42xattr.c
nfs42xdr.c NFSv4.2: fix COPY_NOTIFY xdr buf size calculation 2025-02-08 09:57:59 +01:00
nfsroot.c
nfstrace.c
nfstrace.h
pagelist.c NFS: Fix a race when updating an existing write 2025-08-28 16:31:05 +02:00
pnfs.c pNFS: Handle RPC size limit for layoutcommits 2025-08-20 18:30:50 +02:00
pnfs.h nfs: don't share pNFS DS connections between net namespaces 2025-06-04 14:43:52 +02:00
pnfs_dev.c
pnfs_nfs.c nfs: don't share pNFS DS connections between net namespaces 2025-06-04 14:43:52 +02:00
proc.c
read.c fs/nfs/read: fix double-unlock bug in nfs_return_empty_folio() 2025-06-27 11:11:15 +01:00
super.c nfs: ignore SB_RDONLY when remounting nfs 2025-06-19 15:32:08 +02:00
symlink.c
sysctl.c
sysfs.c NFS: Shut down the nfs_client only after all the superblocks 2025-04-10 14:39:26 +02:00
sysfs.h
unlink.c
write.c NFS: nfs_invalidate_folio() must observe the offset and size arguments 2025-09-19 16:35:44 +02:00