Эх сурвалжийг харах

IB/mlx4: Fix check of opcode in mlx4_ib_post_send()

wr->opcode is invalid if it's >= ARRAY_SIZE(mlx4_ib_opcode), not just
strictly >.

This was spotted by the Coverity checker (CID 1643).

Signed-off-by: Roland Dreier <rolandd@cisco.com>
Roland Dreier 18 жил өмнө
parent
commit
59b0ed1212

+ 1 - 1
drivers/infiniband/hw/mlx4/qp.c

@@ -1238,7 +1238,7 @@ int mlx4_ib_post_send(struct ib_qp *ibqp, struct ib_send_wr *wr,
 		 */
 		 */
 		wmb();
 		wmb();
 
 
-		if (wr->opcode < 0 || wr->opcode > ARRAY_SIZE(mlx4_ib_opcode)) {
+		if (wr->opcode < 0 || wr->opcode >= ARRAY_SIZE(mlx4_ib_opcode)) {
 			err = -EINVAL;
 			err = -EINVAL;
 			goto out;
 			goto out;
 		}
 		}