]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blobdiff - queue-5.10/sunrpc-add-a-struct-rpc_stats-arg-to-rpc_create_args.patch
Linux 5.10.217
[thirdparty/kernel/stable-queue.git] / queue-5.10 / sunrpc-add-a-struct-rpc_stats-arg-to-rpc_create_args.patch
diff --git a/queue-5.10/sunrpc-add-a-struct-rpc_stats-arg-to-rpc_create_args.patch b/queue-5.10/sunrpc-add-a-struct-rpc_stats-arg-to-rpc_create_args.patch
deleted file mode 100644 (file)
index b6549db..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-From fa22ff433c0a5c58aef853785a54436a6f847a95 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Thu, 15 Feb 2024 14:57:30 -0500
-Subject: sunrpc: add a struct rpc_stats arg to rpc_create_args
-
-From: Josef Bacik <josef@toxicpanda.com>
-
-[ Upstream commit 2057a48d0dd00c6a2a94ded7df2bf1d3f2a4a0da ]
-
-We want to be able to have our rpc stats handled in a per network
-namespace manner, so add an option to rpc_create_args to specify a
-different rpc_stats struct instead of using the one on the rpc_program.
-
-Signed-off-by: Josef Bacik <josef@toxicpanda.com>
-Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
-Stable-dep-of: 24457f1be29f ("nfs: Handle error of rpc_proc_register() in nfs_net_init().")
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- include/linux/sunrpc/clnt.h | 1 +
- net/sunrpc/clnt.c           | 5 ++++-
- 2 files changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/include/linux/sunrpc/clnt.h b/include/linux/sunrpc/clnt.h
-index 41ed614e69209..187e9f06cf64b 100644
---- a/include/linux/sunrpc/clnt.h
-+++ b/include/linux/sunrpc/clnt.h
-@@ -126,6 +126,7 @@ struct rpc_create_args {
-       const char              *servername;
-       const char              *nodename;
-       const struct rpc_program *program;
-+      struct rpc_stat         *stats;
-       u32                     prognumber;     /* overrides program->number */
-       u32                     version;
-       rpc_authflavor_t        authflavor;
-diff --git a/net/sunrpc/clnt.c b/net/sunrpc/clnt.c
-index 360a3bcd91fe1..a5ce9b937c42e 100644
---- a/net/sunrpc/clnt.c
-+++ b/net/sunrpc/clnt.c
-@@ -395,7 +395,7 @@ static struct rpc_clnt * rpc_new_client(const struct rpc_create_args *args,
-       clnt->cl_maxproc  = version->nrprocs;
-       clnt->cl_prog     = args->prognumber ? : program->number;
-       clnt->cl_vers     = version->number;
--      clnt->cl_stats    = program->stats;
-+      clnt->cl_stats    = args->stats ? : program->stats;
-       clnt->cl_metrics  = rpc_alloc_iostats(clnt);
-       rpc_init_pipe_dir_head(&clnt->cl_pipedir_objects);
-       err = -ENOMEM;
-@@ -665,6 +665,7 @@ struct rpc_clnt *rpc_clone_client(struct rpc_clnt *clnt)
-               .version        = clnt->cl_vers,
-               .authflavor     = clnt->cl_auth->au_flavor,
-               .cred           = clnt->cl_cred,
-+              .stats          = clnt->cl_stats,
-       };
-       return __rpc_clone_client(&args, clnt);
- }
-@@ -687,6 +688,7 @@ rpc_clone_client_set_auth(struct rpc_clnt *clnt, rpc_authflavor_t flavor)
-               .version        = clnt->cl_vers,
-               .authflavor     = flavor,
-               .cred           = clnt->cl_cred,
-+              .stats          = clnt->cl_stats,
-       };
-       return __rpc_clone_client(&args, clnt);
- }
-@@ -967,6 +969,7 @@ struct rpc_clnt *rpc_bind_new_program(struct rpc_clnt *old,
-               .version        = vers,
-               .authflavor     = old->cl_auth->au_flavor,
-               .cred           = old->cl_cred,
-+              .stats          = old->cl_stats,
-       };
-       struct rpc_clnt *clnt;
-       int err;
--- 
-2.43.0
-