diff options
author | Andrey Ryabinin <aryabinin@virtuozzo.com> | 2015-10-07 14:39:55 +0300 |
---|---|---|
committer | J. Bruce Fields <bfields@redhat.com> | 2015-10-23 15:57:27 -0400 |
commit | 0d0f4aab4e4d290138a4ae7f2ef8469e48c9a669 (patch) | |
tree | 7efb5dbfc6769b16a2f3415b5654efd83fd6d4db /fs/lockd/svc.c | |
parent | 226453d8cfbd5f3bbdcef0d71e67186715bb811d (diff) | |
download | linux-0d0f4aab4e4d290138a4ae7f2ef8469e48c9a669.tar.gz linux-0d0f4aab4e4d290138a4ae7f2ef8469e48c9a669.tar.bz2 linux-0d0f4aab4e4d290138a4ae7f2ef8469e48c9a669.zip |
lockd: get rid of reference-counted NSM RPC clients
Currently we have reference-counted per-net NSM RPC client
which created on the first monitor request and destroyed
after the last unmonitor request. It's needed because
RPC client need to know 'utsname()->nodename', but utsname()
might be NULL when nsm_unmonitor() called.
So instead of holding the rpc client we could just save nodename
in struct nlm_host and pass it to the rpc_create().
Thus ther is no need in keeping rpc client until last
unmonitor request. We could create separate RPC clients
for each monitor/unmonitor requests.
Signed-off-by: Andrey Ryabinin <aryabinin@virtuozzo.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'fs/lockd/svc.c')
-rw-r--r-- | fs/lockd/svc.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/fs/lockd/svc.c b/fs/lockd/svc.c index 0dff13f41808..5f31ebd96c06 100644 --- a/fs/lockd/svc.c +++ b/fs/lockd/svc.c @@ -592,7 +592,6 @@ static int lockd_init_net(struct net *net) INIT_DELAYED_WORK(&ln->grace_period_end, grace_ender); INIT_LIST_HEAD(&ln->lockd_manager.list); ln->lockd_manager.block_opens = false; - spin_lock_init(&ln->nsm_clnt_lock); INIT_LIST_HEAD(&ln->nsm_handles); return 0; } |