alistair23-linux/drivers/infiniband/hw/bnxt_re
Selvin Xavier f218d67ef0 RDMA/bnxt_re: Allow posting when QPs are in error
This  patch allows driver to post send and receive
requests on QPs which are in  error state.

Instead of flushing the QP in the context of polling
error CQEs, the QPs will be added to a flush list
maintained per CQ. QP state is moved to error.
QP is added to flush list if the user moves it
to error state using modify_qp also. After polling the HW
CQ in poll_cq routine, this flush list is traversed
and driver completes work requests on each QP in the flush
list, till the budget expires. The QP is moved out of
flush list during QP destroy or during modify_QP to RESET.

When ULPs post Work Requests while QP is in error state,
driver will store the ULP data and then increment the
QP producer s/w index, without ringing doorbell. It then
schedules a worker to invoke the CQ handler since the
interrupts wont be generated from the HW for this request.

Signed-off-by: Sriharsha Basavapatna <sriharsha.basavapatna@broadcom.com>
Signed-off-by: Selvin Xavier <selvin.xavier@broadcom.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
2017-07-24 08:45:12 -04:00
..
bnxt_re.h RDMA/bnxt_re: Fix the value reported for local ack delay 2017-07-20 11:20:50 -04:00
ib_verbs.c RDMA/bnxt_re: Allow posting when QPs are in error 2017-07-24 08:45:12 -04:00
ib_verbs.h RDMA/bnxt_re: Delete unsupported modify_port function 2017-07-24 08:44:46 -04:00
Kconfig
main.c RDMA/bnxt_re: Allow posting when QPs are in error 2017-07-24 08:45:12 -04:00
Makefile
qplib_fp.c RDMA/bnxt_re: Allow posting when QPs are in error 2017-07-24 08:45:12 -04:00
qplib_fp.h RDMA/bnxt_re: Allow posting when QPs are in error 2017-07-24 08:45:12 -04:00
qplib_rcfw.c RDMA/bnxt_re: Allow posting when QPs are in error 2017-07-24 08:45:12 -04:00
qplib_rcfw.h RDMA/bnxt_re: Allow posting when QPs are in error 2017-07-24 08:45:12 -04:00
qplib_res.c RDMA/bnxt_re: Add vlan tag for untagged RoCE traffic when PFC is configured 2017-07-24 08:45:12 -04:00
qplib_res.h RDMA/bnxt_re: Add vlan tag for untagged RoCE traffic when PFC is configured 2017-07-24 08:45:12 -04:00
qplib_sp.c RDMA/bnxt_re: Add vlan tag for untagged RoCE traffic when PFC is configured 2017-07-24 08:45:12 -04:00
qplib_sp.h RDMA/bnxt_re: Add vlan tag for untagged RoCE traffic when PFC is configured 2017-07-24 08:45:12 -04:00
roce_hsi.h RDMA/bnxt_re: Add vlan tag for untagged RoCE traffic when PFC is configured 2017-07-24 08:45:12 -04:00