Commit 9f7fa37a authored by Sindhu Devale's avatar Sindhu Devale Committed by Jason Gunthorpe

RDMA/irdma: Report correct WC error when there are MW bind errors

Report the correct WC error when MW bind error related asynchronous events
are generated by HW.

Fixes: b48c24c2 ("RDMA/irdma: Implement device supported verb APIs")
Link: https://lore.kernel.org/r/20210916191222.824-5-shiraz.saleem@intel.comSigned-off-by: default avatarSindhu Devale <sindhu.devale@intel.com>
Signed-off-by: default avatarShiraz Saleem <shiraz.saleem@intel.com>
Signed-off-by: default avatarJason Gunthorpe <jgg@nvidia.com>
parent d3bdcd59
...@@ -179,6 +179,11 @@ static void irdma_set_flush_fields(struct irdma_sc_qp *qp, ...@@ -179,6 +179,11 @@ static void irdma_set_flush_fields(struct irdma_sc_qp *qp,
case IRDMA_AE_LLP_TOO_MANY_RETRIES: case IRDMA_AE_LLP_TOO_MANY_RETRIES:
qp->flush_code = FLUSH_RETRY_EXC_ERR; qp->flush_code = FLUSH_RETRY_EXC_ERR;
break; break;
case IRDMA_AE_AMP_MWBIND_INVALID_RIGHTS:
case IRDMA_AE_AMP_MWBIND_BIND_DISABLED:
case IRDMA_AE_AMP_MWBIND_INVALID_BOUNDS:
qp->flush_code = FLUSH_MW_BIND_ERR;
break;
default: default:
qp->flush_code = FLUSH_FATAL_ERR; qp->flush_code = FLUSH_FATAL_ERR;
break; break;
......
...@@ -103,6 +103,7 @@ enum irdma_flush_opcode { ...@@ -103,6 +103,7 @@ enum irdma_flush_opcode {
FLUSH_LOC_LEN_ERR, FLUSH_LOC_LEN_ERR,
FLUSH_FATAL_ERR, FLUSH_FATAL_ERR,
FLUSH_RETRY_EXC_ERR, FLUSH_RETRY_EXC_ERR,
FLUSH_MW_BIND_ERR,
}; };
enum irdma_cmpl_status { enum irdma_cmpl_status {
......
...@@ -3354,6 +3354,8 @@ static enum ib_wc_status irdma_flush_err_to_ib_wc_status(enum irdma_flush_opcode ...@@ -3354,6 +3354,8 @@ static enum ib_wc_status irdma_flush_err_to_ib_wc_status(enum irdma_flush_opcode
return IB_WC_WR_FLUSH_ERR; return IB_WC_WR_FLUSH_ERR;
case FLUSH_RETRY_EXC_ERR: case FLUSH_RETRY_EXC_ERR:
return IB_WC_RETRY_EXC_ERR; return IB_WC_RETRY_EXC_ERR;
case FLUSH_MW_BIND_ERR:
return IB_WC_MW_BIND_ERR;
case FLUSH_FATAL_ERR: case FLUSH_FATAL_ERR:
default: default:
return IB_WC_FATAL_ERR; return IB_WC_FATAL_ERR;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment