ibv_request_notify_cq() when called for the first time ocrdma tries to skip
setting deffered_arm flag. This may lead CQ to an un-armed state thus, never
generating CQ event and leaving consumer in hung state.

Signed-off-by: Devesh Sharma <[email protected]>
---
 src/ocrdma_verbs.c |    3 ---
 1 files changed, 0 insertions(+), 3 deletions(-)

diff --git a/src/ocrdma_verbs.c b/src/ocrdma_verbs.c
index 8e0c344..0f138cf 100644
--- a/src/ocrdma_verbs.c
+++ b/src/ocrdma_verbs.c
@@ -2054,12 +2054,9 @@ int ocrdma_arm_cq(struct ibv_cq *ibcq, int solicited)
        if (cq->first_arm) {
                ocrdma_ring_cq_db(cq, 1, solicited, 0);
                cq->first_arm = 0;
-               goto skip_defer;
        }
 
        cq->deferred_arm = 1;
-
-skip_defer:
        cq->deferred_sol = solicited;
 
        pthread_spin_unlock(&cq->cq_lock);
-- 
1.7.1

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to