aboutsummaryrefslogtreecommitdiffstats
path: root/fs/nfsd/state.h
diff options
context:
space:
mode:
authorStanislav Kinsbursky <skinsbursky@parallels.com>2012-11-14 10:21:16 -0500
committerJ. Bruce Fields <bfields@redhat.com>2012-11-15 07:40:43 -0500
commit52e19c09a183d82d99f10c284bc8b27933b1d1fc (patch)
tree7a4f21eecd888cea675d7ccddddfd03774337af4 /fs/nfsd/state.h
parentc212cecfa21b3d30cd5cc2389754a46973ad9027 (diff)
nfsd: make reclaim_str_hashtbl allocated per net
This hash holds nfs4_clients info, which are network namespace aware. So let's make it allocated per network namespace. Note: this hash is used only by legacy tracker. So let's allocate hash in tracker init. Signed-off-by: Stanislav Kinsbursky <skinsbursky@parallels.com> Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'fs/nfsd/state.h')
-rw-r--r--fs/nfsd/state.h12
1 files changed, 7 insertions, 5 deletions
diff --git a/fs/nfsd/state.h b/fs/nfsd/state.h
index ca8ee8c3ae7..26a912cdfe0 100644
--- a/fs/nfsd/state.h
+++ b/fs/nfsd/state.h
@@ -466,9 +466,10 @@ extern __be32 nfs4_preprocess_stateid_op(struct net *net,
466 stateid_t *stateid, int flags, struct file **filp); 466 stateid_t *stateid, int flags, struct file **filp);
467extern void nfs4_lock_state(void); 467extern void nfs4_lock_state(void);
468extern void nfs4_unlock_state(void); 468extern void nfs4_unlock_state(void);
469void nfs4_remove_reclaim_record(struct nfs4_client_reclaim *); 469void nfs4_remove_reclaim_record(struct nfs4_client_reclaim *, struct nfsd_net *);
470extern void nfs4_release_reclaim(void); 470extern void nfs4_release_reclaim(struct nfsd_net *);
471extern struct nfs4_client_reclaim *nfsd4_find_reclaim_client(const char *recdir); 471extern struct nfs4_client_reclaim *nfsd4_find_reclaim_client(const char *recdir,
472 struct nfsd_net *nn);
472extern __be32 nfs4_check_open_reclaim(clientid_t *clid, bool sessions); 473extern __be32 nfs4_check_open_reclaim(clientid_t *clid, bool sessions);
473extern void nfs4_free_openowner(struct nfs4_openowner *); 474extern void nfs4_free_openowner(struct nfs4_openowner *);
474extern void nfs4_free_lockowner(struct nfs4_lockowner *); 475extern void nfs4_free_lockowner(struct nfs4_lockowner *);
@@ -482,8 +483,9 @@ extern int nfsd4_create_callback_queue(void);
482extern void nfsd4_destroy_callback_queue(void); 483extern void nfsd4_destroy_callback_queue(void);
483extern void nfsd4_shutdown_callback(struct nfs4_client *); 484extern void nfsd4_shutdown_callback(struct nfs4_client *);
484extern void nfs4_put_delegation(struct nfs4_delegation *dp); 485extern void nfs4_put_delegation(struct nfs4_delegation *dp);
485extern struct nfs4_client_reclaim *nfs4_client_to_reclaim(const char *name); 486extern struct nfs4_client_reclaim *nfs4_client_to_reclaim(const char *name,
486extern bool nfs4_has_reclaimed_state(const char *name); 487 struct nfsd_net *nn);
488extern bool nfs4_has_reclaimed_state(const char *name, struct nfsd_net *nn);
487extern void release_session_client(struct nfsd4_session *); 489extern void release_session_client(struct nfsd4_session *);
488extern void nfsd4_purge_closed_stateid(struct nfs4_stateowner *); 490extern void nfsd4_purge_closed_stateid(struct nfs4_stateowner *);
489 491