Add a check for cq_poll_info.error before setting vendor_err
instead of always setting it.
Signed-off-by: Mustafa Ismail <mustafa.ismail@intel.com>
Signed-off-by: Faisal Latif <faisal.latif@intel.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
                }
                entry->wc_flags = 0;
                entry->wr_id = cq_poll_info.wr_id;
-               if (!cq_poll_info.error)
-                       entry->status = IB_WC_SUCCESS;
-               else
+               if (cq_poll_info.error) {
                        entry->status = IB_WC_WR_FLUSH_ERR;
+                       entry->vendor_err = cq_poll_info.major_err << 16 | cq_poll_info.minor_err;
+               } else {
+                       entry->status = IB_WC_SUCCESS;
+               }
 
                switch (cq_poll_info.op_type) {
                case I40IW_OP_TYPE_RDMA_WRITE:
                        break;
                }
 
-               entry->vendor_err =
-                   cq_poll_info.major_err << 16 | cq_poll_info.minor_err;
                entry->ex.imm_data = 0;
                qp = (struct i40iw_sc_qp *)cq_poll_info.qp_handle;
                entry->qp = (struct ib_qp *)qp->back_qp;