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 /include/linux/lockd | |
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 'include/linux/lockd')
-rw-r--r-- | include/linux/lockd/lockd.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/lockd/lockd.h b/include/linux/lockd/lockd.h index fd3b65bf51b5..c15373894a42 100644 --- a/include/linux/lockd/lockd.h +++ b/include/linux/lockd/lockd.h @@ -68,6 +68,7 @@ struct nlm_host { struct nsm_handle *h_nsmhandle; /* NSM status handle */ char *h_addrbuf; /* address eyecatcher */ struct net *net; /* host net */ + char nodename[UNX_MAXNODENAME + 1]; }; /* |