From: Olga Kornievskaia <kolga@xxxxxxxxxx> This patch series attempts to allow for new mounts that are to the same server (ie nfsv4.1+ session trunkable servers) but different network addresses to use connections associated with those mounts but still use the same client structure. A new mount options, "max_connect", controls how many extra transports can be added to an existing client, with maximum of 16 such transports. v3: -- add a new counter to xprt_switch to keep track of transports with unique addresses -- control of enforcing the limit is moved into the sunrpc layer into the function rpc_clnt_test_and_add_xprt -- after a trunking transport is created if mount request asked for nconnect connections, create as many as the original/first mount had Olga Kornievskaia (6): SUNRPC keep track of number of transports to unique addresses SUNRPC add xps_nunique_destaddr_xprts to xprt_switch_info in sysfs NFSv4 introduce max_connect mount options SUNRPC enforce creation of no more than max_connect xprts NFSv4 add network transport when session trunking is detected NFSv4 allow for nconnect value of trunkable transport fs/nfs/client.c | 2 ++ fs/nfs/fs_context.c | 7 ++++ fs/nfs/internal.h | 2 ++ fs/nfs/nfs4client.c | 50 ++++++++++++++++++++++++++-- fs/nfs/super.c | 2 ++ include/linux/nfs_fs.h | 5 +++ include/linux/nfs_fs_sb.h | 1 + include/linux/sunrpc/clnt.h | 2 ++ include/linux/sunrpc/xprtmultipath.h | 1 + net/sunrpc/clnt.c | 11 +++++- net/sunrpc/sysfs.c | 4 ++- net/sunrpc/xprtmultipath.c | 1 + 12 files changed, 84 insertions(+), 4 deletions(-) -- 2.27.0