123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128 |
- #ifndef __NFSD_NETNS_H__
- #define __NFSD_NETNS_H__
- #include <net/net_namespace.h>
- #include <net/netns/generic.h>
- #define CLIENT_HASH_BITS 4
- #define CLIENT_HASH_SIZE (1 << CLIENT_HASH_BITS)
- #define CLIENT_HASH_MASK (CLIENT_HASH_SIZE - 1)
- #define SESSION_HASH_SIZE 512
- struct cld_net;
- struct nfsd4_client_tracking_ops;
- struct nfsd_net {
- struct cld_net *cld_net;
- struct cache_detail *svc_expkey_cache;
- struct cache_detail *svc_export_cache;
- struct cache_detail *idtoname_cache;
- struct cache_detail *nametoid_cache;
- struct lock_manager nfsd4_manager;
- bool grace_ended;
- time_t boot_time;
-
- struct list_head *reclaim_str_hashtbl;
- int reclaim_str_hashtbl_size;
- struct list_head *conf_id_hashtbl;
- struct rb_root conf_name_tree;
- struct list_head *unconf_id_hashtbl;
- struct rb_root unconf_name_tree;
- struct list_head *sessionid_hashtbl;
-
- struct list_head client_lru;
- struct list_head close_lru;
- struct list_head del_recall_lru;
-
- struct list_head blocked_locks_lru;
- struct delayed_work laundromat_work;
-
- spinlock_t client_lock;
-
- spinlock_t blocked_locks_lock;
- struct file *rec_file;
- bool in_grace;
- const struct nfsd4_client_tracking_ops *client_tracking_ops;
- time_t nfsd4_lease;
- time_t nfsd4_grace;
- bool nfsd_net_up;
- bool lockd_up;
-
- struct timeval nfssvc_boot;
-
- unsigned int max_connections;
- u32 clientid_counter;
- u32 clverifier_counter;
- struct svc_serv *nfsd_serv;
- };
- #define nfsd_netns_ready(nn) ((nn)->sessionid_hashtbl)
- extern int nfsd_net_id;
- #endif
|