linux/fs/nfs
Trond Myklebust 3b03882123 NFSv4/pNFS: Don't call _nfs4_pnfs_v3_ds_connect multiple times
[ Upstream commit f46f84931a0aa344678efe412d4b071d84d8a805 ]

After we grab the lock in nfs4_pnfs_ds_connect(), there is no check for
whether or not ds->ds_clp has already been initialised, so we can end up
adding the same transports multiple times.

Fixes: fc821d5920 ("pnfs/NFSv4.1: Add multipath capabilities to pNFS flexfiles servers over NFSv3")
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2021-07-20 16:10:50 +02:00
..
blocklayout
filelayout NFS: fix an incorrect limit in filelayout_decode_layout() 2021-06-03 08:59:06 +02:00
flexfilelayout pNFS/flexfiles: fix incorrect size check in decode_nfs_fh() 2021-05-19 10:08:25 +02:00
Kconfig nfs: fix PNFS_FLEXFILE_LAYOUT Kconfig default 2021-03-30 14:35:21 +02:00
Makefile
cache_lib.c
cache_lib.h
callback.c
callback.h
callback_proc.c
callback_xdr.c
client.c NFS: Fix a potential NULL dereference in nfs_get_client() 2021-06-16 11:59:44 +02:00
delegation.c
delegation.h
dir.c NFS: Don't gratuitously clear the inode cache when lookup failed 2021-03-17 17:03:56 +01:00
direct.c SUNRPC reverting d03727b248 ("NFSv4 fix CLOSE not waiting for direct IO compeletion") 2020-07-29 10:18:29 +02:00
dns_resolve.c
dns_resolve.h
export.c
file.c nfs: nfs_file_write() should check for writeback errors 2020-08-21 13:05:36 +02:00
fscache-index.c
fscache.c
fscache.h
getroot.c
inode.c NFS: nfs_find_open_context() may only select open files 2021-07-20 16:10:48 +02:00
internal.h NFS: nfs_igrab_and_active must first reference the superblock 2021-01-19 18:26:17 +01:00
io.c
iostat.h
mount_clnt.c
namespace.c NFS: fix nfs_path in case of a rename retry 2020-11-05 11:43:24 +01:00
netns.h
nfs.h
nfs2super.c
nfs2xdr.c
nfs3_fs.h
nfs3acl.c
nfs3client.c
nfs3proc.c nfs: fix acl memory leak of posix_acl_create() 2021-07-20 16:10:49 +02:00
nfs3super.c
nfs3xdr.c NFS: Correct size calculation for create reply length 2021-03-30 14:35:21 +02:00
nfs4_fs.h NFSv4: Fix deadlock between nfs4_evict_inode() and nfs4_opendata_get_inode() 2021-06-16 11:59:44 +02:00
nfs4client.c NFSv4: Initialise connection to the server in nfs4_alloc_client() 2021-07-20 16:10:49 +02:00
nfs4file.c NFSv4: Fix v4.0/v4.1 SEEK_DATA return -ENOTSUPP when set NFS_V4_2 config 2021-06-03 08:59:06 +02:00
nfs4getroot.c
nfs4idmap.c
nfs4idmap.h
nfs4namespace.c
nfs4proc.c NFSv4: nfs4_proc_set_acl needs to restore NFS_CAP_UIDGID_NOMAP on error. 2021-06-16 11:59:45 +02:00
nfs4renewd.c
nfs4session.c
nfs4session.h
nfs4state.c
nfs4super.c NFSv4: Fix a pNFS layout related use-after-free race when freeing the inode 2021-01-06 14:48:40 +01:00
nfs4sysctl.c
nfs4trace.c
nfs4trace.h NFSv4: Wait for stateid updates after CLOSE/OPEN_DOWNGRADE 2020-11-05 11:43:31 +01:00
nfs4xdr.c NFSv4: Fix the alignment of page data in the getdeviceinfo reply 2020-12-30 11:51:16 +01:00
nfs42.h
nfs42proc.c NFSv4.2 fix handling of sr_eof in SEEK's reply 2021-05-19 10:08:25 +02:00
nfs42xdr.c
nfsroot.c
nfstrace.c
nfstrace.h NFS: nfs_xdr_status should record the procedure name 2020-10-01 13:18:09 +02:00
pagelist.c NFS: Don't corrupt the value of pg_bytes_written in nfs_do_recoalesce() 2021-06-03 08:59:06 +02:00
pnfs.c NFSv4: Fix a NULL pointer dereference in pnfs_mark_matching_lsegs_return() 2021-06-03 08:59:00 +02:00
pnfs.h pNFS: We want return-on-close to complete when evicting the inode 2021-01-19 18:26:17 +01:00
pnfs_dev.c
pnfs_nfs.c NFSv4/pNFS: Don't call _nfs4_pnfs_v3_ds_connect multiple times 2021-07-20 16:10:50 +02:00
proc.c
read.c
super.c
symlink.c
sysctl.c
sysfs.c
sysfs.h
unlink.c
write.c NFS: Fix races nfs_page_group_destroy() vs nfs_destroy_unlinked_subrequests() 2020-10-01 13:17:52 +02:00