xref: /openbmc/linux/net/sunrpc/sysfs.h (revision 2612e3bbc0386368a850140a6c9b990cd496a5ec)
174678748SOlga Kornievskaia // SPDX-License-Identifier: GPL-2.0
274678748SOlga Kornievskaia /*
374678748SOlga Kornievskaia  * Copyright (c) 2020 Anna Schumaker <Anna.Schumaker@Netapp.com>
474678748SOlga Kornievskaia  */
574678748SOlga Kornievskaia #ifndef __SUNRPC_SYSFS_H
674678748SOlga Kornievskaia #define __SUNRPC_SYSFS_H
774678748SOlga Kornievskaia 
8baea9944SOlga Kornievskaia struct rpc_sysfs_xprt_switch {
9baea9944SOlga Kornievskaia 	struct kobject kobject;
10baea9944SOlga Kornievskaia 	struct net *net;
11baea9944SOlga Kornievskaia 	struct rpc_xprt_switch *xprt_switch;
12baea9944SOlga Kornievskaia 	struct rpc_xprt *xprt;
13baea9944SOlga Kornievskaia };
14baea9944SOlga Kornievskaia 
15d408ebe0SOlga Kornievskaia struct rpc_sysfs_xprt {
16d408ebe0SOlga Kornievskaia 	struct kobject kobject;
17d408ebe0SOlga Kornievskaia 	struct rpc_xprt *xprt;
18*5b7eb784SOlga Kornievskaia 	struct rpc_xprt_switch *xprt_switch;
19d408ebe0SOlga Kornievskaia };
20d408ebe0SOlga Kornievskaia 
2174678748SOlga Kornievskaia int rpc_sysfs_init(void);
2274678748SOlga Kornievskaia void rpc_sysfs_exit(void);
2374678748SOlga Kornievskaia 
242a338a54SOlga Kornievskaia void rpc_sysfs_client_setup(struct rpc_clnt *clnt,
252a338a54SOlga Kornievskaia 			    struct rpc_xprt_switch *xprt_switch,
262a338a54SOlga Kornievskaia 			    struct net *net);
27c5a382ebSOlga Kornievskaia void rpc_sysfs_client_destroy(struct rpc_clnt *clnt);
28baea9944SOlga Kornievskaia void rpc_sysfs_xprt_switch_setup(struct rpc_xprt_switch *xprt_switch,
29baea9944SOlga Kornievskaia 				 struct rpc_xprt *xprt, gfp_t gfp_flags);
30baea9944SOlga Kornievskaia void rpc_sysfs_xprt_switch_destroy(struct rpc_xprt_switch *xprt);
31d408ebe0SOlga Kornievskaia void rpc_sysfs_xprt_setup(struct rpc_xprt_switch *xprt_switch,
32d408ebe0SOlga Kornievskaia 			  struct rpc_xprt *xprt, gfp_t gfp_flags);
33d408ebe0SOlga Kornievskaia void rpc_sysfs_xprt_destroy(struct rpc_xprt *xprt);
34c5a382ebSOlga Kornievskaia 
3574678748SOlga Kornievskaia #endif
36