Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 */
0002 /*
0003  * NFS-private data for each "struct net".  Accessed with net_generic().
0004  */
0005 
0006 #ifndef __NFS_NETNS_H__
0007 #define __NFS_NETNS_H__
0008 
0009 #include <linux/nfs4.h>
0010 #include <net/net_namespace.h>
0011 #include <net/netns/generic.h>
0012 
0013 struct bl_dev_msg {
0014     int32_t status;
0015     uint32_t major, minor;
0016 };
0017 
0018 struct nfs_netns_client;
0019 
0020 struct nfs_net {
0021     struct cache_detail *nfs_dns_resolve;
0022     struct rpc_pipe *bl_device_pipe;
0023     struct bl_dev_msg bl_mount_reply;
0024     wait_queue_head_t bl_wq;
0025     struct mutex bl_mutex;
0026     struct list_head nfs_client_list;
0027     struct list_head nfs_volume_list;
0028 #if IS_ENABLED(CONFIG_NFS_V4)
0029     struct idr cb_ident_idr; /* Protected by nfs_client_lock */
0030     unsigned short nfs_callback_tcpport;
0031     unsigned short nfs_callback_tcpport6;
0032     int cb_users[NFS4_MAX_MINOR_VERSION + 1];
0033 #endif
0034     struct nfs_netns_client *nfs_client;
0035     spinlock_t nfs_client_lock;
0036     ktime_t boot_time;
0037 #ifdef CONFIG_PROC_FS
0038     struct proc_dir_entry *proc_nfsfs;
0039 #endif
0040 };
0041 
0042 extern unsigned int nfs_net_id;
0043 
0044 #endif