On 05-Dec-18 21:48, Hefty, Sean wrote: >> +struct efa_caps { >> + u32 max_sq; >> + u32 max_sq_depth; /* wqes */ >> + u32 max_rq; >> + u32 max_rq_depth; /* wqes */ >> + u32 max_cq; >> + u32 max_cq_depth; /* cqes */ >> + u32 inline_buf_size; >> + u32 max_sq_sge; >> + u32 max_rq_sge; >> + u32 max_mr; >> + u64 max_mr_pages; >> + u64 page_size_cap; /* bytes */ >> + u32 max_pd; >> + u32 max_ah; >> + u16 sub_cqs_per_cq; >> + u16 max_inline_data; /* bytes */ >> +}; > > I'm trying to understand the device based on this. Are the SQs and RQs tightly coupled as a single addressable unit? Other than the reliability aspect, does the device present similar application semantics as a verbs device that supports only UD QPs? SQs and RQs are coupled as QPs (thanks for pointing that out), will be replaced with max_qp. SRD API semantics are identical to UD QPs apart from the completion status codes (and of course reliability guarantee). > > - Sean >