]> git.openfabrics.org - ~emulex/libocrdma.git/commitdiff
RDMA/libocrdma: dont skip setting deffer_arm
authorDevesh Sharma <devesh.sharma@emulex.com>
Thu, 26 Jun 2014 10:49:27 +0000 (16:19 +0530)
committerDevesh Sharma <devesh.sharma@emulex.com>
Tue, 1 Jul 2014 05:43:12 +0000 (11:13 +0530)
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 <devesh.sharma@emulex.com>
src/ocrdma_verbs.c

index 8e0c344332f80ec262f7d325311abe2fe601daef..0f138cfd9bc90fcc8c04ed140cd0628f6496d304 100644 (file)
@@ -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);