Example #1
0
 def create_srq(self):
     srq_init_attr = self.create_srq_init_attr()
     try:
         self.srq = SRQ(self.pd, srq_init_attr)
     except PyverbsRDMAError as ex:
         if ex.error_code == errno.EOPNOTSUPP:
             raise unittest.SkipTest('Create SRQ is not supported')
         raise ex
 def create_srq(self, cmid):
     srq_init_attr = SrqInitAttr(SrqAttr(max_wr=self.num_msgs))
     try:
         self.srq = SRQ(cmid.pd, srq_init_attr)
     except PyverbsRDMAError as ex:
         if ex.error_code == errno.EOPNOTSUPP:
             raise unittest.SkipTest('Create SRQ is not supported')
         raise ex
Example #3
0
 def _create_rdma_objects(self):
     cq = CQ(self.pd_res.ctx, 100, None, None, 0)
     dev_attr = self.pd_res.ctx.query_device()
     qp_cap = u.random_qp_cap(dev_attr)
     qia = QPInitAttr(scq=cq, rcq=cq, cap=qp_cap)
     qia.qp_type = e.IBV_QPT_RC
     QP(self.pd_res.parent_domain, qia)
     srq_init_attr = SrqInitAttr(SrqAttr())
     SRQ(self.pd_res.parent_domain, srq_init_attr)
Example #4
0
 def create_srq(self):
     srq_attr = SrqInitAttrEx()
     srq_attr.comp_mask = e.IBV_SRQ_INIT_ATTR_TYPE | e.IBV_SRQ_INIT_ATTR_PD | \
                          e.IBV_SRQ_INIT_ATTR_CQ | e.IBV_SRQ_INIT_ATTR_TM
     srq_attr.srq_type = e.IBV_SRQT_TM
     srq_attr.pd = self.pd
     srq_attr.cq = self.cq
     srq_attr.max_num_tags = self.ctx.query_device_ex().tm_caps.max_num_tags
     srq_attr.max_ops = 10
     self.srq = SRQ(self.ctx, srq_attr)
Example #5
0
 def create_srq(self):
     """
     Initializes self.srq with a Shared Receive QP object.
     :return: None
     """
     srq_attr = SrqInitAttrEx(max_wr=self.qp_count*self.num_msgs)
     srq_attr.srq_type = e.IBV_SRQT_XRC
     srq_attr.pd = self.pd
     srq_attr.xrcd = self.xrcd
     srq_attr.cq = self.cq
     srq_attr.comp_mask = e.IBV_SRQ_INIT_ATTR_TYPE | e.IBV_SRQ_INIT_ATTR_PD | \
                          e.IBV_SRQ_INIT_ATTR_CQ | e.IBV_SRQ_INIT_ATTR_XRCD
     self.srq = SRQ(self.ctx, srq_attr)
Example #6
0
 def _create_rdma_objects(self):
     cq = CQ(self.pd_res.ctx, 100, None, None, 0)
     dev_attr = self.pd_res.ctx.query_device()
     qp_cap = u.random_qp_cap(dev_attr)
     qia = QPInitAttr(scq=cq, rcq=cq, cap=qp_cap)
     qia.qp_type = e.IBV_QPT_RC
     QP(self.pd_res.parent_domain, qia)
     srq_init_attr = SrqInitAttr(SrqAttr())
     SRQ(self.pd_res.parent_domain, srq_init_attr)
     cq_init_attrs_ex = CqInitAttrEx(
         comp_mask=e.IBV_CQ_INIT_ATTR_MASK_PD,
         parent_domain=self.pd_res.parent_domain)
     CQEX(self.pd_res.ctx, cq_init_attrs_ex)