162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * NFS-private data for each "struct net". Accessed with net_generic(). 462306a36Sopenharmony_ci */ 562306a36Sopenharmony_ci 662306a36Sopenharmony_ci#ifndef __NFS_NETNS_H__ 762306a36Sopenharmony_ci#define __NFS_NETNS_H__ 862306a36Sopenharmony_ci 962306a36Sopenharmony_ci#include <linux/nfs4.h> 1062306a36Sopenharmony_ci#include <net/net_namespace.h> 1162306a36Sopenharmony_ci#include <net/netns/generic.h> 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_cistruct bl_dev_msg { 1462306a36Sopenharmony_ci int32_t status; 1562306a36Sopenharmony_ci uint32_t major, minor; 1662306a36Sopenharmony_ci}; 1762306a36Sopenharmony_ci 1862306a36Sopenharmony_cistruct nfs_netns_client; 1962306a36Sopenharmony_ci 2062306a36Sopenharmony_cistruct nfs_net { 2162306a36Sopenharmony_ci struct cache_detail *nfs_dns_resolve; 2262306a36Sopenharmony_ci struct rpc_pipe *bl_device_pipe; 2362306a36Sopenharmony_ci struct bl_dev_msg bl_mount_reply; 2462306a36Sopenharmony_ci wait_queue_head_t bl_wq; 2562306a36Sopenharmony_ci struct mutex bl_mutex; 2662306a36Sopenharmony_ci struct list_head nfs_client_list; 2762306a36Sopenharmony_ci struct list_head nfs_volume_list; 2862306a36Sopenharmony_ci#if IS_ENABLED(CONFIG_NFS_V4) 2962306a36Sopenharmony_ci struct idr cb_ident_idr; /* Protected by nfs_client_lock */ 3062306a36Sopenharmony_ci unsigned short nfs_callback_tcpport; 3162306a36Sopenharmony_ci unsigned short nfs_callback_tcpport6; 3262306a36Sopenharmony_ci int cb_users[NFS4_MAX_MINOR_VERSION + 1]; 3362306a36Sopenharmony_ci#endif 3462306a36Sopenharmony_ci struct nfs_netns_client *nfs_client; 3562306a36Sopenharmony_ci spinlock_t nfs_client_lock; 3662306a36Sopenharmony_ci ktime_t boot_time; 3762306a36Sopenharmony_ci#ifdef CONFIG_PROC_FS 3862306a36Sopenharmony_ci struct proc_dir_entry *proc_nfsfs; 3962306a36Sopenharmony_ci#endif 4062306a36Sopenharmony_ci}; 4162306a36Sopenharmony_ci 4262306a36Sopenharmony_ciextern unsigned int nfs_net_id; 4362306a36Sopenharmony_ci 4462306a36Sopenharmony_ci#endif 45