Revert "IB/mlx4: Return EAGAIN for any error in mlx4_ib_poll_one"
authorLeon Romanovsky <leonro@mellanox.com>
Sun, 28 Aug 2016 07:58:32 +0000 (10:58 +0300)
committerDoug Ledford <dledford@redhat.com>
Fri, 2 Sep 2016 18:09:14 +0000 (14:09 -0400)
By Mellanox HW design and SW implementation, poll_cq never
fails and returns errors, so all these printks are to catch ULP bugs.

In case of such bug, the reverted patch will cause reentry of the
function, resulting in a printk storm.

This reverts commit 5412352fcd8f ("IB/mlx4: Return EAGAIN for any error in mlx4_ib_poll_one")

Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
drivers/infiniband/hw/mlx4/cq.c

index 006db64..15b6289 100644 (file)
@@ -690,7 +690,7 @@ repoll:
        if (unlikely((cqe->owner_sr_opcode & MLX4_CQE_OPCODE_MASK) == MLX4_OPCODE_NOP &&
                     is_send)) {
                pr_warn("Completion for NOP opcode detected!\n");
-               return -EAGAIN;
+               return -EINVAL;
        }
 
        /* Resize CQ in progress */
@@ -721,7 +721,7 @@ repoll:
                if (unlikely(!mqp)) {
                        pr_warn("CQ %06x with entry for unknown QPN %06x\n",
                               cq->mcq.cqn, be32_to_cpu(cqe->vlan_my_qpn) & MLX4_CQE_QPN_MASK);
-                       return -EAGAIN;
+                       return -EINVAL;
                }
 
                *cur_qp = to_mibqp(mqp);
@@ -739,7 +739,7 @@ repoll:
                if (unlikely(!msrq)) {
                        pr_warn("CQ %06x with entry for unknown SRQN %06x\n",
                                cq->mcq.cqn, srq_num);
-                       return -EAGAIN;
+                       return -EINVAL;
                }
        }