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

Commit 62da3b24 authored by Trond Myklebust's avatar Trond Myklebust
Browse files

SUNRPC: Rename xprt_disconnect()



xprt_disconnect() should really only be called when the transport shutdown
is completed, and it is time to wake up any pending tasks. Rename it to
xprt_disconnect_done() in order to reflect the semantical change.

Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
parent 3ebb067d
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -245,7 +245,7 @@ void xprt_adjust_cwnd(struct rpc_task *task, int result);
struct rpc_rqst *	xprt_lookup_rqst(struct rpc_xprt *xprt, __be32 xid);
struct rpc_rqst *	xprt_lookup_rqst(struct rpc_xprt *xprt, __be32 xid);
void			xprt_complete_rqst(struct rpc_task *task, int copied);
void			xprt_complete_rqst(struct rpc_task *task, int copied);
void			xprt_release_rqst_cong(struct rpc_task *task);
void			xprt_release_rqst_cong(struct rpc_task *task);
void			xprt_disconnect(struct rpc_xprt *xprt);
void			xprt_disconnect_done(struct rpc_xprt *xprt);
void			xprt_force_disconnect(struct rpc_xprt *xprt);
void			xprt_force_disconnect(struct rpc_xprt *xprt);


/*
/*
+3 −3
Original line number Original line Diff line number Diff line
@@ -574,11 +574,11 @@ static void xprt_autoclose(struct work_struct *work)
}
}


/**
/**
 * xprt_disconnect - mark a transport as disconnected
 * xprt_disconnect_done - mark a transport as disconnected
 * @xprt: transport to flag for disconnect
 * @xprt: transport to flag for disconnect
 *
 *
 */
 */
void xprt_disconnect(struct rpc_xprt *xprt)
void xprt_disconnect_done(struct rpc_xprt *xprt)
{
{
	dprintk("RPC:       disconnected transport %p\n", xprt);
	dprintk("RPC:       disconnected transport %p\n", xprt);
	spin_lock_bh(&xprt->transport_lock);
	spin_lock_bh(&xprt->transport_lock);
@@ -586,7 +586,7 @@ void xprt_disconnect(struct rpc_xprt *xprt)
	xprt_wake_pending_tasks(xprt, -ENOTCONN);
	xprt_wake_pending_tasks(xprt, -ENOTCONN);
	spin_unlock_bh(&xprt->transport_lock);
	spin_unlock_bh(&xprt->transport_lock);
}
}
EXPORT_SYMBOL_GPL(xprt_disconnect);
EXPORT_SYMBOL_GPL(xprt_disconnect_done);


/**
/**
 * xprt_force_disconnect - force a transport to disconnect
 * xprt_force_disconnect - force a transport to disconnect
+2 −2
Original line number Original line Diff line number Diff line
@@ -449,7 +449,7 @@ xprt_rdma_close(struct rpc_xprt *xprt)
	struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt);
	struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt);


	dprintk("RPC:       %s: closing\n", __func__);
	dprintk("RPC:       %s: closing\n", __func__);
	xprt_disconnect(xprt);
	xprt_disconnect_done(xprt);
	(void) rpcrdma_ep_disconnect(&r_xprt->rx_ep, &r_xprt->rx_ia);
	(void) rpcrdma_ep_disconnect(&r_xprt->rx_ep, &r_xprt->rx_ia);
}
}


@@ -682,7 +682,7 @@ xprt_rdma_send_request(struct rpc_task *task)
	}
	}


	if (rpcrdma_ep_post(&r_xprt->rx_ia, &r_xprt->rx_ep, req)) {
	if (rpcrdma_ep_post(&r_xprt->rx_ia, &r_xprt->rx_ep, req)) {
		xprt_disconnect(xprt);
		xprt_disconnect_done(xprt);
		return -ENOTCONN;	/* implies disconnect */
		return -ENOTCONN;	/* implies disconnect */
	}
	}


+2 −2
Original line number Original line Diff line number Diff line
@@ -777,7 +777,7 @@ static void xs_close(struct rpc_xprt *xprt)
	clear_bit(XPRT_CLOSE_WAIT, &xprt->state);
	clear_bit(XPRT_CLOSE_WAIT, &xprt->state);
	clear_bit(XPRT_CLOSING, &xprt->state);
	clear_bit(XPRT_CLOSING, &xprt->state);
	smp_mb__after_clear_bit();
	smp_mb__after_clear_bit();
	xprt_disconnect(xprt);
	xprt_disconnect_done(xprt);
}
}


/**
/**
@@ -1159,7 +1159,7 @@ static void xs_tcp_state_change(struct sock *sk)
		clear_bit(XPRT_CLOSING, &xprt->state);
		clear_bit(XPRT_CLOSING, &xprt->state);
		smp_mb__after_clear_bit();
		smp_mb__after_clear_bit();
		/* Mark transport as closed and wake up all pending tasks */
		/* Mark transport as closed and wake up all pending tasks */
		xprt_disconnect(xprt);
		xprt_disconnect_done(xprt);
	}
	}
 out:
 out:
	read_unlock(&sk->sk_callback_lock);
	read_unlock(&sk->sk_callback_lock);