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

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
cache_lib.c
cache_lib.h
callback_proc.c pNFS: Add a flag argument to pnfs_destroy_layouts_byclid() 2024-07-08 13:47:26 -04:00
callback_xdr.c SUNRPC: Fix integer overflow in decode_rc_list() 2024-10-03 16:19:13 -04:00
callback.c sunrpc: allow svc threads to fail initialisation cleanly 2024-09-20 19:31:03 -04:00
callback.h NFSv4: Add CB_GETATTR support for delegated attributes 2024-07-08 13:47:25 -04:00
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 nfs: add 'noalignwrite' option for lock-less 'lost writes' prevention 2024-09-23 15:03:13 -04:00
fscache.c nfs: Fix oops in nfs_netfs_init_request() when copying to cache 2025-01-17 13:40:34 +01:00
fscache.h netfs: Speed up buffered reading 2024-09-12 12:20:41 +02:00
getroot.c nfs: fix the comment of nfs_get_root 2024-09-23 15:03:13 -04:00
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 mm: add comments for allocation helpers explaining why they are macros 2024-07-12 15:52:20 -07:00
Kconfig nfs: add missing selections of CONFIG_CRC32 2025-04-25 10:47:50 +02:00
localio.c nfs/localio: restore creds before releasing pageio data 2025-09-19 16:35:43 +02:00
Makefile nfs: add LOCALIO support 2024-09-23 15:03:30 -04:00
mount_clnt.c NFS: remove unused struct 'mnt_fhstatus' 2024-07-08 13:47:24 -04:00
namespace.c
netns.h
nfs.h
nfs2super.c fs: nfs: add missing MODULE_DESCRIPTION() macros 2024-07-08 13:47:24 -04:00
nfs2xdr.c nfs_common: factor out nfs_errtbl and nfs_stat_to_errno 2024-09-23 15:03:29 -04:00
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 fs: nfs: add missing MODULE_DESCRIPTION() macros 2024-07-08 13:47:24 -04:00
nfs3xdr.c nfs_common: factor out nfs_errtbl and nfs_stat_to_errno 2024-09-23 15:03:29 -04:00
nfs4_fs.h nfs: simplify and guarantee owner uniqueness. 2024-09-23 15:03:12 -04:00
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 fs: nfs: add missing MODULE_DESCRIPTION() macros 2024-07-08 13:47:24 -04:00
nfs4sysctl.c
nfs4trace.c nfs/blocklayout: SCSI layout trace points for reservation key reg/unreg 2024-07-08 13:47:27 -04:00
nfs4trace.h nfs/blocklayout: SCSI layout trace points for reservation key reg/unreg 2024-07-08 13:47:27 -04:00
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 nfs: add LOCALIO support 2024-09-23 15:03:30 -04:00
pagelist.c NFS: Fix a race when updating an existing write 2025-08-28 16:31:05 +02:00
pnfs_dev.c nfs: remove the unused max_deviceinfo_size field from struct pnfs_layoutdriver_type 2024-07-10 13:23:17 -04:00
pnfs_nfs.c nfs: don't share pNFS DS connections between net namespaces 2025-06-04 14:43:52 +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
proc.c Return the delegation when deleting sillyrenamed files 2024-07-08 13:47:26 -04:00
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 nfs: Remove calls to folio_set_error 2024-05-31 12:31:41 +02:00
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 Return the delegation when deleting sillyrenamed files 2024-07-08 13:47:26 -04:00
write.c NFS: nfs_invalidate_folio() must observe the offset and size arguments 2025-09-19 16:35:44 +02:00