summaryrefslogtreecommitdiff
path: root/usr/src/uts/common/rpc/rpcib.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/uts/common/rpc/rpcib.c')
-rw-r--r--usr/src/uts/common/rpc/rpcib.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/usr/src/uts/common/rpc/rpcib.c b/usr/src/uts/common/rpc/rpcib.c
index 080771852e..3d3635f001 100644
--- a/usr/src/uts/common/rpc/rpcib.c
+++ b/usr/src/uts/common/rpc/rpcib.c
@@ -2419,7 +2419,7 @@ rib_send_resp(CONN *conn, struct clist *cl, uint32_t msgid)
{
rdma_stat ret = RDMA_SUCCESS;
struct rdma_done_list *rd;
- clock_t timout, cv_wait_ret;
+ clock_t cv_wait_ret;
caddr_t *wid = NULL;
rib_qp_t *qp = ctoqp(conn);
@@ -2435,11 +2435,9 @@ rib_send_resp(CONN *conn, struct clist *cl, uint32_t msgid)
/*
* Wait for RDMA_DONE from remote end
*/
- timout =
- drv_usectohz(REPLY_WAIT_TIME * 1000000) + ddi_get_lbolt();
- cv_wait_ret = cv_timedwait(&rd->rdma_done_cv,
- &qp->rdlist_lock,
- timout);
+ cv_wait_ret = cv_reltimedwait(&rd->rdma_done_cv,
+ &qp->rdlist_lock, drv_usectohz(REPLY_WAIT_TIME * 1000000),
+ TR_CLOCK_TICK);
rdma_done_rm(qp, rd);