This is a static checker fix.  "count" is unsigned so it's never -1.
Since "count" is 16 bits and the addition operation is implicitly
casted to int then there is no wrapping here.

Signed-off-by: Dan Carpenter <[email protected]>

diff --git a/drivers/infiniband/hw/cxgb3/iwch_qp.c 
b/drivers/infiniband/hw/cxgb3/iwch_qp.c
index e5649e8..b57c0be 100644
--- a/drivers/infiniband/hw/cxgb3/iwch_qp.c
+++ b/drivers/infiniband/hw/cxgb3/iwch_qp.c
@@ -883,7 +883,8 @@ u16 iwch_rqes_posted(struct iwch_qp *qhp)
 {
        union t3_wr *wqe = qhp->wq.queue;
        u16 count = 0;
-       while ((count+1) != 0 && fw_riwrh_opcode((struct fw_riwrh *)wqe) == 
T3_WR_RCV) {
+
+       while (count < USHRT_MAX && fw_riwrh_opcode((struct fw_riwrh *)wqe) == 
T3_WR_RCV) {
                count++;
                wqe++;
        }
--
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