[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20211228080717.10666-11-lizhijian@cn.fujitsu.com>
Date: Tue, 28 Dec 2021 16:07:17 +0800
From: Li Zhijian <lizhijian@...fujitsu.com>
To: <linux-rdma@...r.kernel.org>, <zyjzyj2000@...il.com>,
<jgg@...pe.ca>, <aharonl@...dia.com>, <leon@...nel.org>
CC: <linux-kernel@...r.kernel.org>, <mbloch@...dia.com>,
<liweihang@...wei.com>, <liangwenpeng@...wei.com>,
<yangx.jy@...fujitsu.com>, <rpearsonhpe@...il.com>,
<y-goto@...itsu.com>, Li Zhijian <lizhijian@...fujitsu.com>
Subject: [RFC PATCH rdma-next 10/10] RDMA/rxe: Add RD FLUSH service support
Although the SPEC said FLUSH is supported by RC/RD/XRC services, XRC has
not been supported by the rxe.
So XRC FLUSH will not be supported until rxe implements XRC service.
Signed-off-by: Li Zhijian <lizhijian@...fujitsu.com>
---
I have not setup a RD environment to test this protocol
---
drivers/infiniband/sw/rxe/rxe_opcode.c | 20 ++++++++++++++++++++
include/rdma/ib_pack.h | 1 +
2 files changed, 21 insertions(+)
diff --git a/drivers/infiniband/sw/rxe/rxe_opcode.c b/drivers/infiniband/sw/rxe/rxe_opcode.c
index d61c8b354af4..0d5f555f5ec5 100644
--- a/drivers/infiniband/sw/rxe/rxe_opcode.c
+++ b/drivers/infiniband/sw/rxe/rxe_opcode.c
@@ -919,6 +919,26 @@ struct rxe_opcode_info rxe_opcode[RXE_NUM_OPCODE] = {
+ RXE_RDETH_BYTES,
}
},
+ [IB_OPCODE_RD_RDMA_FLUSH] = {
+ .name = "IB_OPCODE_RD_RDMA_FLUSH",
+ .mask = RXE_RDETH_MASK | RXE_FETH_MASK | RXE_RETH_MASK
+ | RXE_FLUSH_MASK | RXE_START_MASK
+ | RXE_END_MASK | RXE_REQ_MASK,
+ .length = RXE_BTH_BYTES + RXE_FETH_BYTES + RXE_RETH_BYTES,
+ .offset = {
+ [RXE_BTH] = 0,
+ [RXE_RDETH] = RXE_BTH_BYTES,
+ [RXE_FETH] = RXE_BTH_BYTES
+ + RXE_RDETH_BYTES,
+ [RXE_RETH] = RXE_BTH_BYTES
+ + RXE_RDETH_BYTES
+ + RXE_FETH_BYTES,
+ [RXE_PAYLOAD] = RXE_BTH_BYTES
+ + RXE_RDETH_BYTES
+ + RXE_FETH_BYTES
+ + RXE_RETH_BYTES,
+ }
+ },
/* UD */
[IB_OPCODE_UD_SEND_ONLY] = {
diff --git a/include/rdma/ib_pack.h b/include/rdma/ib_pack.h
index d19edb502de6..40568a33ead8 100644
--- a/include/rdma/ib_pack.h
+++ b/include/rdma/ib_pack.h
@@ -151,6 +151,7 @@ enum {
IB_OPCODE(RD, ATOMIC_ACKNOWLEDGE),
IB_OPCODE(RD, COMPARE_SWAP),
IB_OPCODE(RD, FETCH_ADD),
+ IB_OPCODE(RD, RDMA_FLUSH),
/* UD */
IB_OPCODE(UD, SEND_ONLY),
--
2.31.1
Powered by blists - more mailing lists