Re: [for-next PATCH v5 06/11] RDMA/rxe: Extend rxe packet format to support flush

Yanjun Zhu
2022-11-11T09:29:32Z

在 2022/11/11 16:55, lizhijian@fujitsu.com 写道:
>
> On 11/11/2022 16:43, Yanjun Zhu wrote:
>>> /******************************************************************************
>>>    * Atomic Extended Transport Header
>>>
>>> ******************************************************************************/
>>> @@ -910,6 +956,7 @@ enum rxe_hdr_length {
>>>       RXE_ATMETH_BYTES    = sizeof(struct rxe_atmeth),
>>>       RXE_IETH_BYTES        = sizeof(struct rxe_ieth),
>>>       RXE_RDETH_BYTES        = sizeof(struct rxe_rdeth),
>>> +    RXE_FETH_BYTES        = sizeof(struct rxe_feth),
>>>   };
>>>   static inline size_t header_size(struct rxe_pkt_info *pkt)
>>> diff --git a/drivers/infiniband/sw/rxe/rxe_opcode.c
>>> b/drivers/infiniband/sw/rxe/rxe_opcode.c
>>> index d4ba4d506f17..55aad13e57bb 100644
>>> --- a/drivers/infiniband/sw/rxe/rxe_opcode.c
>>> +++ b/drivers/infiniband/sw/rxe/rxe_opcode.c
>>> @@ -101,6 +101,12 @@ struct rxe_wr_opcode_info rxe_wr_opcode_info[] = {
>>>               [IB_QPT_UC]    = WR_LOCAL_OP_MASK,
>>>           },
>>>       },
>>> +    [IB_WR_FLUSH]                    = {
>>> +        .name   = "IB_WR_FLUSH",
>>> +        .mask   = {
>>> +            [IB_QPT_RC]    = WR_FLUSH_MASK,
>>> +        },
>>> +    },
>>>   };
>> Hi, Zhijian
>>
>> I am making tests with it. Except rc, other modes are supported? such as
>> rd, xrc?
>>
> Only RC is implemented for FLUSH, current RXE only supports RC service[1].
> BTW, XRC is on the way in Bob's patch IIRC.
>
> https://lore.kernel.org/r/cce0f07d-25fc-5880-69e7-001d951750b7@gmail.com
40  * IBA header types and methods
41  *
42  * Some of these are for reference and completeness only since

43  * rxe does not currently support RD transport

44  * most of this could be moved into IB core. ib_pack.h has

45  * part of this but is incomplete

Zhu Yanjun

>
>
>> Zhu Yanjun