Commit 4db77695 authored by Stanislav Kinsbursky's avatar Stanislav Kinsbursky Committed by J. Bruce Fields

LockD: pass service to per-net up and down functions

Signed-off-by: default avatarStanislav Kinsbursky <skinsbursky@parallels.com>
Signed-off-by: default avatarJ. Bruce Fields <bfields@redhat.com>
parent 91c427ac
...@@ -251,10 +251,9 @@ static int make_socks(struct svc_serv *serv, struct net *net) ...@@ -251,10 +251,9 @@ static int make_socks(struct svc_serv *serv, struct net *net)
return err; return err;
} }
static int lockd_up_net(struct net *net) static int lockd_up_net(struct svc_serv *serv, struct net *net)
{ {
struct lockd_net *ln = net_generic(net, lockd_net_id); struct lockd_net *ln = net_generic(net, lockd_net_id);
struct svc_serv *serv = nlmsvc_rqst->rq_server;
int error; int error;
if (ln->nlmsvc_users++) if (ln->nlmsvc_users++)
...@@ -276,10 +275,9 @@ static int lockd_up_net(struct net *net) ...@@ -276,10 +275,9 @@ static int lockd_up_net(struct net *net)
return error; return error;
} }
static void lockd_down_net(struct net *net) static void lockd_down_net(struct svc_serv *serv, struct net *net)
{ {
struct lockd_net *ln = net_generic(net, lockd_net_id); struct lockd_net *ln = net_generic(net, lockd_net_id);
struct svc_serv *serv = nlmsvc_rqst->rq_server;
if (ln->nlmsvc_users) { if (ln->nlmsvc_users) {
if (--ln->nlmsvc_users == 0) { if (--ln->nlmsvc_users == 0) {
...@@ -307,7 +305,7 @@ int lockd_up(struct net *net) ...@@ -307,7 +305,7 @@ int lockd_up(struct net *net)
* Check whether we're already up and running. * Check whether we're already up and running.
*/ */
if (nlmsvc_rqst) { if (nlmsvc_rqst) {
error = lockd_up_net(net); error = lockd_up_net(nlmsvc_rqst->rq_server, net);
goto out; goto out;
} }
...@@ -378,7 +376,7 @@ int lockd_up(struct net *net) ...@@ -378,7 +376,7 @@ int lockd_up(struct net *net)
return error; return error;
err_start: err_start:
lockd_down_net(net); lockd_down_net(serv, net);
goto destroy_and_out; goto destroy_and_out;
} }
EXPORT_SYMBOL_GPL(lockd_up); EXPORT_SYMBOL_GPL(lockd_up);
...@@ -390,7 +388,7 @@ void ...@@ -390,7 +388,7 @@ void
lockd_down(struct net *net) lockd_down(struct net *net)
{ {
mutex_lock(&nlmsvc_mutex); mutex_lock(&nlmsvc_mutex);
lockd_down_net(net); lockd_down_net(nlmsvc_rqst->rq_server, net);
if (nlmsvc_users) { if (nlmsvc_users) {
if (--nlmsvc_users) if (--nlmsvc_users)
goto out; goto out;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment