mirror of https://gitee.com/openkylin/linux.git
IB/ehca: Improve latency by unlocking after triggering the hardware
Kick the hardware before unlocking the send/receive queue to overlap processing a little more. Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
This commit is contained in:
parent
8705ce5b90
commit
f72d2f0814
|
@ -407,10 +407,9 @@ int ehca_post_send(struct ib_qp *qp,
|
|||
} /* eof for cur_send_wr */
|
||||
|
||||
post_send_exit0:
|
||||
/* UNLOCK the QUEUE */
|
||||
spin_unlock_irqrestore(&my_qp->spinlock_s, flags);
|
||||
iosync(); /* serialize GAL register access */
|
||||
hipz_update_sqa(my_qp, wqe_cnt);
|
||||
spin_unlock_irqrestore(&my_qp->spinlock_s, flags);
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
@ -473,9 +472,9 @@ static int internal_post_recv(struct ehca_qp *my_qp,
|
|||
} /* eof for cur_recv_wr */
|
||||
|
||||
post_recv_exit0:
|
||||
spin_unlock_irqrestore(&my_qp->spinlock_r, flags);
|
||||
iosync(); /* serialize GAL register access */
|
||||
hipz_update_rqa(my_qp, wqe_cnt);
|
||||
spin_unlock_irqrestore(&my_qp->spinlock_r, flags);
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue