* Seeking clarification on the XRC Annex wrt. a TGT QP having a SQ
@ 2022-02-07 14:55 Haakon Bugge
2022-02-07 18:59 ` Leon Romanovsky
0 siblings, 1 reply; 4+ messages in thread
From: Haakon Bugge @ 2022-02-07 14:55 UTC (permalink / raw)
To: Jason Gunthorpe; +Cc: Leon Romanovsky, OFED mailing list
Hey,
I have a question to XRC TGT QPs and whether they do have a set of requestor resources or not.
The XRC Annex (March 2, 2009 Revision 1.0) (*1) boldly states:
XRC TGT QPs are similar to RD EECs but do not have a requester side.
Nevertheless, in Table 9, page 36, it is stated that "Local ACK Timeout" and "SQ PSN" are required attributes during an RTR -> RTS transition for an XRC Target QP. This seems to be an incorrect requirement, subject to the XRC Target QP not having a send queue?
Further, looking at a vendor's creation of an XRC TGT QP, we see:
MLX5_SET(qpc, qpc, no_sq, 1);
in the function create_xrc_tgt().
If the interpretation that an XRC TGT does _not_ have a send queue is correct, we cannot simply remove "Local ACK Timeout" and "SQ PSN" as mandatory attributes during the state transition, because that will break all current software. Is it an idea to move those to optional attributes in the qp_state_table[]? Then remove the IB_QPT_XRC_TGT label in cm_init_qp_rts_attr()?
Thxs, Håkon
*1: IBTA Spec Release 1.6 is equal to the XRC Annex in this respect
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Seeking clarification on the XRC Annex wrt. a TGT QP having a SQ
2022-02-07 14:55 Seeking clarification on the XRC Annex wrt. a TGT QP having a SQ Haakon Bugge
@ 2022-02-07 18:59 ` Leon Romanovsky
2022-02-08 10:53 ` Haakon Bugge
0 siblings, 1 reply; 4+ messages in thread
From: Leon Romanovsky @ 2022-02-07 18:59 UTC (permalink / raw)
To: Haakon Bugge; +Cc: Jason Gunthorpe, OFED mailing list
On Mon, Feb 07, 2022 at 02:55:35PM +0000, Haakon Bugge wrote:
> Hey,
>
>
> I have a question to XRC TGT QPs and whether they do have a set of requestor resources or not.
>
>
> The XRC Annex (March 2, 2009 Revision 1.0) (*1) boldly states:
>
> XRC TGT QPs are similar to RD EECs but do not have a requester side.
>
>
> Nevertheless, in Table 9, page 36, it is stated that "Local ACK Timeout" and "SQ PSN" are required attributes during an RTR -> RTS transition for an XRC Target QP. This seems to be an incorrect requirement, subject to the XRC Target QP not having a send queue?
>
> Further, looking at a vendor's creation of an XRC TGT QP, we see:
>
> MLX5_SET(qpc, qpc, no_sq, 1);
>
> in the function create_xrc_tgt().
>
> If the interpretation that an XRC TGT does _not_ have a send queue is correct, we cannot simply remove "Local ACK Timeout" and "SQ PSN" as mandatory attributes during the state transition, because that will break all current software. Is it an idea to move those to optional attributes in the qp_state_table[]? Then remove the IB_QPT_XRC_TGT label in cm_init_qp_rts_attr()?
I think that your interpretation of spec is correct, but why do you want
to remove these attributes? The device ignores them anyway.
Thanks
>
>
> Thxs, Håkon
>
> *1: IBTA Spec Release 1.6 is equal to the XRC Annex in this respect
>
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Seeking clarification on the XRC Annex wrt. a TGT QP having a SQ
2022-02-07 18:59 ` Leon Romanovsky
@ 2022-02-08 10:53 ` Haakon Bugge
2022-02-08 12:07 ` Leon Romanovsky
0 siblings, 1 reply; 4+ messages in thread
From: Haakon Bugge @ 2022-02-08 10:53 UTC (permalink / raw)
To: Leon Romanovsky; +Cc: Jason Gunthorpe, OFED mailing list
> On 7 Feb 2022, at 19:59, Leon Romanovsky <leon@kernel.org> wrote:
>
> On Mon, Feb 07, 2022 at 02:55:35PM +0000, Haakon Bugge wrote:
>> Hey,
>>
>>
>> I have a question to XRC TGT QPs and whether they do have a set of requestor resources or not.
>>
>>
>> The XRC Annex (March 2, 2009 Revision 1.0) (*1) boldly states:
>>
>> XRC TGT QPs are similar to RD EECs but do not have a requester side.
>>
>>
>> Nevertheless, in Table 9, page 36, it is stated that "Local ACK Timeout" and "SQ PSN" are required attributes during an RTR -> RTS transition for an XRC Target QP. This seems to be an incorrect requirement, subject to the XRC Target QP not having a send queue?
>>
>> Further, looking at a vendor's creation of an XRC TGT QP, we see:
>>
>> MLX5_SET(qpc, qpc, no_sq, 1);
>>
>> in the function create_xrc_tgt().
>>
>> If the interpretation that an XRC TGT does _not_ have a send queue is correct, we cannot simply remove "Local ACK Timeout" and "SQ PSN" as mandatory attributes during the state transition, because that will break all current software. Is it an idea to move those to optional attributes in the qp_state_table[]? Then remove the IB_QPT_XRC_TGT label in cm_init_qp_rts_attr()?
>
> I think that your interpretation of spec is correct, but why do you want
> to remove these attributes? The device ignores them anyway.
:-)
Or, rephrasing your question, why have these attributes as mandatory? The device ignores them anyway ;-)
To me, it is confusing. For example, in rdma_set_min_rnr_timer(), the test for XRC TGT is correct, since an XRG INI QP does not have any responder part. But this is then inconsistent with other parts of CM/CMA.
Thxs, Håkon
> Thanks
>
>>
>>
>> Thxs, Håkon
>>
>> *1: IBTA Spec Release 1.6 is equal to the XRC Annex in this respect
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Seeking clarification on the XRC Annex wrt. a TGT QP having a SQ
2022-02-08 10:53 ` Haakon Bugge
@ 2022-02-08 12:07 ` Leon Romanovsky
0 siblings, 0 replies; 4+ messages in thread
From: Leon Romanovsky @ 2022-02-08 12:07 UTC (permalink / raw)
To: Haakon Bugge; +Cc: Jason Gunthorpe, OFED mailing list
On Tue, Feb 08, 2022 at 10:53:15AM +0000, Haakon Bugge wrote:
>
>
> > On 7 Feb 2022, at 19:59, Leon Romanovsky <leon@kernel.org> wrote:
> >
> > On Mon, Feb 07, 2022 at 02:55:35PM +0000, Haakon Bugge wrote:
> >> Hey,
> >>
> >>
> >> I have a question to XRC TGT QPs and whether they do have a set of requestor resources or not.
> >>
> >>
> >> The XRC Annex (March 2, 2009 Revision 1.0) (*1) boldly states:
> >>
> >> XRC TGT QPs are similar to RD EECs but do not have a requester side.
> >>
> >>
> >> Nevertheless, in Table 9, page 36, it is stated that "Local ACK Timeout" and "SQ PSN" are required attributes during an RTR -> RTS transition for an XRC Target QP. This seems to be an incorrect requirement, subject to the XRC Target QP not having a send queue?
> >>
> >> Further, looking at a vendor's creation of an XRC TGT QP, we see:
> >>
> >> MLX5_SET(qpc, qpc, no_sq, 1);
> >>
> >> in the function create_xrc_tgt().
> >>
> >> If the interpretation that an XRC TGT does _not_ have a send queue is correct, we cannot simply remove "Local ACK Timeout" and "SQ PSN" as mandatory attributes during the state transition, because that will break all current software. Is it an idea to move those to optional attributes in the qp_state_table[]? Then remove the IB_QPT_XRC_TGT label in cm_init_qp_rts_attr()?
> >
> > I think that your interpretation of spec is correct, but why do you want
> > to remove these attributes? The device ignores them anyway.
>
> :-)
>
> Or, rephrasing your question, why have these attributes as mandatory? The device ignores them anyway ;-)
I can only guess. The spec is written by HW people, together with
statement than XRC TGT QP same as RC, most likely, the decision was
to take RC block and copy/paste for XRC TGT.
Thanks
>
> To me, it is confusing. For example, in rdma_set_min_rnr_timer(), the test for XRC TGT is correct, since an XRG INI QP does not have any responder part. But this is then inconsistent with other parts of CM/CMA.
>
>
> Thxs, Håkon
>
> > Thanks
> >
> >>
> >>
> >> Thxs, Håkon
> >>
> >> *1: IBTA Spec Release 1.6 is equal to the XRC Annex in this respect
>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2022-02-08 12:07 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-02-07 14:55 Seeking clarification on the XRC Annex wrt. a TGT QP having a SQ Haakon Bugge
2022-02-07 18:59 ` Leon Romanovsky
2022-02-08 10:53 ` Haakon Bugge
2022-02-08 12:07 ` Leon Romanovsky
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).