diff options
author | Xiao Yang <yangx.jy@fujitsu.com> | 2022-12-01 14:39:27 +0000 |
---|---|---|
committer | Jason Gunthorpe <jgg@nvidia.com> | 2022-12-01 19:51:10 -0400 |
commit | 3aec427bb1499bd3325d2e251edb729a5a8643df (patch) | |
tree | eb22a928fdab6ecbfa5f0c28d8af2579a796a5eb /drivers | |
parent | 034e285f8b99062a0cf29112e1232154a6a44aa5 (diff) | |
download | linux-stable-3aec427bb1499bd3325d2e251edb729a5a8643df.tar.gz linux-stable-3aec427bb1499bd3325d2e251edb729a5a8643df.tar.bz2 linux-stable-3aec427bb1499bd3325d2e251edb729a5a8643df.zip |
RDMA/rxe: Implement atomic write completion
Generate an atomic write completion when the atomic write request
has been finished.
Link: https://lore.kernel.org/r/1669905568-62-3-git-send-email-yangx.jy@fujitsu.com
Signed-off-by: Xiao Yang <yangx.jy@fujitsu.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/infiniband/sw/rxe/rxe_comp.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/infiniband/sw/rxe/rxe_comp.c b/drivers/infiniband/sw/rxe/rxe_comp.c index 4dca4f8bbb5a..1c525325e271 100644 --- a/drivers/infiniband/sw/rxe/rxe_comp.c +++ b/drivers/infiniband/sw/rxe/rxe_comp.c @@ -104,6 +104,7 @@ static enum ib_wc_opcode wr_to_wc_opcode(enum ib_wr_opcode opcode) case IB_WR_LOCAL_INV: return IB_WC_LOCAL_INV; case IB_WR_REG_MR: return IB_WC_REG_MR; case IB_WR_BIND_MW: return IB_WC_BIND_MW; + case IB_WR_ATOMIC_WRITE: return IB_WC_ATOMIC_WRITE; default: return 0xff; @@ -269,6 +270,9 @@ static inline enum comp_state check_ack(struct rxe_qp *qp, if ((syn & AETH_TYPE_MASK) != AETH_ACK) return COMPST_ERROR; + if (wqe->wr.opcode == IB_WR_ATOMIC_WRITE) + return COMPST_WRITE_SEND; + fallthrough; /* (IB_OPCODE_RC_RDMA_READ_RESPONSE_MIDDLE doesn't have an AETH) */ |