]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
RDMA/cxgb4: Fix incorrect BUG_ON conditions
authorSteve Wise <swise@opengridcomputing.com>
Wed, 19 Mar 2014 12:14:42 +0000 (17:44 +0530)
committerRoland Dreier <roland@purestorage.com>
Thu, 20 Mar 2014 17:01:30 +0000 (10:01 -0700)
Based on original work from Jay Hernandez <jay@chelsio.com>

Signed-off-by: Steve Wise <swise@opengridcomputing.com>
Signed-off-by: Roland Dreier <roland@purestorage.com>
drivers/infiniband/hw/cxgb4/cq.c

index 906119f7a43ff6bf43eff73fb3e3ada382929c90..d6a7db2c42f60a4cbc3eb81bd23ea1603add6ec2 100644 (file)
@@ -603,7 +603,7 @@ proc_cqe:
         */
        if (SQ_TYPE(hw_cqe)) {
                int idx = CQE_WRID_SQ_IDX(hw_cqe);
-               BUG_ON(idx > wq->sq.size);
+               BUG_ON(idx >= wq->sq.size);
 
                /*
                * Account for any unsignaled completions completed by
@@ -617,7 +617,7 @@ proc_cqe:
                        wq->sq.in_use -= wq->sq.size + idx - wq->sq.cidx;
                else
                        wq->sq.in_use -= idx - wq->sq.cidx;
-               BUG_ON(wq->sq.in_use < 0 && wq->sq.in_use < wq->sq.size);
+               BUG_ON(wq->sq.in_use <= 0 && wq->sq.in_use >= wq->sq.size);
 
                wq->sq.cidx = (uint16_t)idx;
                PDBG("%s completing sq idx %u\n", __func__, wq->sq.cidx);