blob: 8ee1fab832686ed068468c5de8b12789af8a6371 [file] [log] [blame]
Chuck Leverf0920752012-05-21 22:45:41 -04001/*
2 * NFS-private data for each "struct net". Accessed with net_generic().
3 */
4
Stanislav Kinsbursky1b340d02011-11-25 17:13:04 +03005#ifndef __NFS_NETNS_H__
6#define __NFS_NETNS_H__
7
Stanislav Kinsburskyca57ccc2012-10-02 14:18:54 +04008#include <linux/nfs4.h>
Stanislav Kinsbursky1b340d02011-11-25 17:13:04 +03009#include <net/net_namespace.h>
10#include <net/netns/generic.h>
11
Stanislav Kinsburskycb9c1c42012-03-11 18:20:23 +040012struct bl_dev_msg {
13 int32_t status;
14 uint32_t major, minor;
15};
16
Stanislav Kinsbursky1b340d02011-11-25 17:13:04 +030017struct nfs_net {
18 struct cache_detail *nfs_dns_resolve;
Stanislav Kinsbursky9e2e74d2012-01-10 17:04:24 +040019 struct rpc_pipe *bl_device_pipe;
Stanislav Kinsburskycb9c1c42012-03-11 18:20:23 +040020 struct bl_dev_msg bl_mount_reply;
Stanislav Kinsbursky5ffaf852012-03-11 18:20:31 +040021 wait_queue_head_t bl_wq;
Stanislav Kinsbursky6b131682012-01-23 17:26:05 +000022 struct list_head nfs_client_list;
Stanislav Kinsburskyc25d32b2012-01-23 17:26:14 +000023 struct list_head nfs_volume_list;
Bryan Schumaker89d77c82012-07-30 16:05:25 -040024#if IS_ENABLED(CONFIG_NFS_V4)
Stanislav Kinsbursky28cd1b32012-01-23 17:26:22 +000025 struct idr cb_ident_idr; /* Protected by nfs_client_lock */
Stanislav Kinsburskybbe0a3a2012-08-20 18:00:36 +040026 unsigned short nfs_callback_tcpport;
Stanislav Kinsbursky29dcc162012-08-20 18:00:41 +040027 unsigned short nfs_callback_tcpport6;
Stanislav Kinsburskyb3d19c52012-08-20 18:00:46 +040028 int cb_users[NFS4_MAX_MINOR_VERSION + 1];
Stanislav Kinsbursky28cd1b32012-01-23 17:26:22 +000029#endif
Stanislav Kinsburskydc030852012-01-23 17:26:31 +000030 spinlock_t nfs_client_lock;
Chuck Leverf0920752012-05-21 22:45:41 -040031 struct timespec boot_time;
Stanislav Kinsbursky1b340d02011-11-25 17:13:04 +030032};
33
34extern int nfs_net_id;
35
36#endif