On Tue, Jun 15, 2021 at 9:10 PM Olga Kornievskaia <olga.kornievskaia@xxxxxxxxx> wrote: > > 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 Any comments on/objections to this version? > > 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 >