NLM: Introduce external nlm_host set-up and tear-down functions
We would like to remove the per-lock-operation nlm_lookup_host() call from nlmclnt_proc(). The new architecture pins an nlm_host structure to each NFS client superblock that has the "lock" mount option set. The NFS client passes in the pinned nlm_host structure during each call to nlmclnt_proc(). NFS client unmount processing "puts" the nlm_host so it can be garbage- collected later. This patch introduces externally callable NLM functions that handle mount-time nlm_host set up and tear-down. Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
This commit is contained in:

committed by
Trond Myklebust

parent
86d61d8638
commit
52c4044d00
@@ -35,6 +35,13 @@ extern struct nlmsvc_binding * nlmsvc_ops;
|
||||
/*
|
||||
* Functions exported by the lockd module
|
||||
*/
|
||||
extern struct nlm_host *nlmclnt_init(const char *server_name,
|
||||
const struct sockaddr *server_address,
|
||||
size_t server_addrlen,
|
||||
unsigned short protocol,
|
||||
u32 nfs_version);
|
||||
extern void nlmclnt_done(struct nlm_host *host);
|
||||
|
||||
extern int nlmclnt_proc(struct inode *, int, struct file_lock *);
|
||||
extern int lockd_up(int proto);
|
||||
extern void lockd_down(void);
|
||||
|
Reference in New Issue
Block a user