iw_cxgb4: Fix cxgb4 arm CQ logic w/IB_CQ_REPORT_MISSED_EVENTS
authorBharat Potnuri <bharat@chelsio.com>
Tue, 23 Aug 2016 14:57:33 +0000 (20:27 +0530)
committerDoug Ledford <dledford@redhat.com>
Tue, 23 Aug 2016 16:52:52 +0000 (12:52 -0400)
commitcff069b78c21559f427c3fefe9ef3294e3dec094
tree293a179997afae57cfae0c2d809194e7b4c85413
parentfaa739fb5df56aadab96bcd2f6eb3486cc3a3aec
iw_cxgb4: Fix cxgb4 arm CQ logic w/IB_CQ_REPORT_MISSED_EVENTS

Current cxgb4 arm CQ logic ignores IB_CQ_REPORT_MISSED_EVENTS for
request completion notification on a CQ. Due to this ib_poll_handler()
assumes all events polled and avoids further iopoll scheduling.

This patch adds logic to cxgb4 ib_req_notify_cq() handler to check if
CQ is not empty and return accordingly. Based on the return value of
ib_req_notify_cq() handler, ib_poll_handler() will schedule a run of
iopoll handler.

Signed-off-by: Potnuri Bharat Teja <bharat@chelsio.com>
Reviewed-by: Steve Wise <swise@opengridcomputing.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
drivers/infiniband/hw/cxgb4/cq.c
drivers/infiniband/hw/cxgb4/t4.h