diff options
author | Somnath Kotur <somnath.kotur@broadcom.com> | 2017-05-22 03:15:36 -0700 |
---|---|---|
committer | Doug Ledford <dledford@redhat.com> | 2017-06-14 13:01:58 -0400 |
commit | 3fb755b3d58084001c89e5f0fd558552bdef9051 (patch) | |
tree | a4ee02d3eb52e5a813181e2dbe5ea7b7f3e0ab93 /drivers/infiniband/hw/bnxt_re/qplib_fp.h | |
parent | 1c980b010f06696c9093c5d6a5ac7b5145f89a04 (diff) | |
download | linux-3fb755b3d58084001c89e5f0fd558552bdef9051.tar.bz2 |
RDMA/bnxt_re: Add HW workaround for avoiding stall for UD QPs
HW stalls out after 0x800000 WQEs are posted for UD QPs.
To workaround this problem, driver will send a modify_qp cmd
to the HW at around the halfway mark(0x400000) so that FW
can accordingly modify the QP context in the HW to prevent this
stall.
This workaround needs to be done for UD, QP1 and Raw Ethertype
packets. Added a counter to keep track of WQEs posted during post_send.
Signed-off-by: Somnath Kotur <somnath.kotur@broadcom.com>
Signed-off-by: Selvin Xavier <selvin.xavier@broadcom.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
Diffstat (limited to 'drivers/infiniband/hw/bnxt_re/qplib_fp.h')
-rw-r--r-- | drivers/infiniband/hw/bnxt_re/qplib_fp.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/infiniband/hw/bnxt_re/qplib_fp.h b/drivers/infiniband/hw/bnxt_re/qplib_fp.h index 71539ea7f421..36b7b7db0e3f 100644 --- a/drivers/infiniband/hw/bnxt_re/qplib_fp.h +++ b/drivers/infiniband/hw/bnxt_re/qplib_fp.h @@ -250,6 +250,7 @@ struct bnxt_qplib_qp { u8 timeout; u8 retry_cnt; u8 rnr_retry; + u64 wqe_cnt; u32 min_rnr_timer; u32 max_rd_atomic; u32 max_dest_rd_atomic; |