]> git.baikalelectronics.ru Git - kernel.git/commit
RDMA/bnxt_re: Add HW workaround for avoiding stall for UD QPs
authorSomnath Kotur <somnath.kotur@broadcom.com>
Mon, 22 May 2017 10:15:36 +0000 (03:15 -0700)
committerDoug Ledford <dledford@redhat.com>
Wed, 14 Jun 2017 17:01:58 +0000 (13:01 -0400)
commitd6fa1dc6e1d7f12711a7fa198b4ca05331cb3e59
treea4ee02d3eb52e5a813181e2dbe5ea7b7f3e0ab93
parent6017805401d90003c4e6be3cbca5e073761edd71
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>
drivers/infiniband/hw/bnxt_re/bnxt_re.h
drivers/infiniband/hw/bnxt_re/ib_verbs.c
drivers/infiniband/hw/bnxt_re/qplib_fp.c
drivers/infiniband/hw/bnxt_re/qplib_fp.h