Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

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

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

parent 91c427ac
Loading
Loading
Loading
Loading
+5 −7
Original line number Diff line number Diff line
@@ -251,10 +251,9 @@ static int make_socks(struct svc_serv *serv, struct net *net)
	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 svc_serv *serv = nlmsvc_rqst->rq_server;
	int error;

	if (ln->nlmsvc_users++)
@@ -276,10 +275,9 @@ static int lockd_up_net(struct net *net)
	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 svc_serv *serv = nlmsvc_rqst->rq_server;

	if (ln->nlmsvc_users) {
		if (--ln->nlmsvc_users == 0) {
@@ -307,7 +305,7 @@ int lockd_up(struct net *net)
	 * Check whether we're already up and running.
	 */
	if (nlmsvc_rqst) {
		error = lockd_up_net(net);
		error = lockd_up_net(nlmsvc_rqst->rq_server, net);
		goto out;
	}

@@ -378,7 +376,7 @@ int lockd_up(struct net *net)
	return error;

err_start:
	lockd_down_net(net);
	lockd_down_net(serv, net);
	goto destroy_and_out;
}
EXPORT_SYMBOL_GPL(lockd_up);
@@ -390,7 +388,7 @@ void
lockd_down(struct net *net)
{
	mutex_lock(&nlmsvc_mutex);
	lockd_down_net(net);
	lockd_down_net(nlmsvc_rqst->rq_server, net);
	if (nlmsvc_users) {
		if (--nlmsvc_users)
			goto out;