18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * NFS-private data for each "struct net". Accessed with net_generic(). 48c2ecf20Sopenharmony_ci */ 58c2ecf20Sopenharmony_ci 68c2ecf20Sopenharmony_ci#ifndef __NFS_NETNS_H__ 78c2ecf20Sopenharmony_ci#define __NFS_NETNS_H__ 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_ci#include <linux/nfs4.h> 108c2ecf20Sopenharmony_ci#include <net/net_namespace.h> 118c2ecf20Sopenharmony_ci#include <net/netns/generic.h> 128c2ecf20Sopenharmony_ci#include <linux/sunrpc/stats.h> 138c2ecf20Sopenharmony_ci 148c2ecf20Sopenharmony_cistruct bl_dev_msg { 158c2ecf20Sopenharmony_ci int32_t status; 168c2ecf20Sopenharmony_ci uint32_t major, minor; 178c2ecf20Sopenharmony_ci}; 188c2ecf20Sopenharmony_ci 198c2ecf20Sopenharmony_cistruct nfs_netns_client; 208c2ecf20Sopenharmony_ci 218c2ecf20Sopenharmony_cistruct nfs_net { 228c2ecf20Sopenharmony_ci struct cache_detail *nfs_dns_resolve; 238c2ecf20Sopenharmony_ci struct rpc_pipe *bl_device_pipe; 248c2ecf20Sopenharmony_ci struct bl_dev_msg bl_mount_reply; 258c2ecf20Sopenharmony_ci wait_queue_head_t bl_wq; 268c2ecf20Sopenharmony_ci struct mutex bl_mutex; 278c2ecf20Sopenharmony_ci struct list_head nfs_client_list; 288c2ecf20Sopenharmony_ci struct list_head nfs_volume_list; 298c2ecf20Sopenharmony_ci#if IS_ENABLED(CONFIG_NFS_V4) 308c2ecf20Sopenharmony_ci struct idr cb_ident_idr; /* Protected by nfs_client_lock */ 318c2ecf20Sopenharmony_ci unsigned short nfs_callback_tcpport; 328c2ecf20Sopenharmony_ci unsigned short nfs_callback_tcpport6; 338c2ecf20Sopenharmony_ci int cb_users[NFS4_MAX_MINOR_VERSION + 1]; 348c2ecf20Sopenharmony_ci#endif 358c2ecf20Sopenharmony_ci struct nfs_netns_client *nfs_client; 368c2ecf20Sopenharmony_ci spinlock_t nfs_client_lock; 378c2ecf20Sopenharmony_ci ktime_t boot_time; 388c2ecf20Sopenharmony_ci struct rpc_stat rpcstats; 398c2ecf20Sopenharmony_ci#ifdef CONFIG_PROC_FS 408c2ecf20Sopenharmony_ci struct proc_dir_entry *proc_nfsfs; 418c2ecf20Sopenharmony_ci#endif 428c2ecf20Sopenharmony_ci}; 438c2ecf20Sopenharmony_ci 448c2ecf20Sopenharmony_ciextern unsigned int nfs_net_id; 458c2ecf20Sopenharmony_ci 468c2ecf20Sopenharmony_ci#endif 47