Skip to content

Commit a97ea53

Browse files
authored
Merge pull request #1615 from amzn/cython
pyverbs: Align code to support Cython 3.1.0 format
2 parents e586fcd + a45b3aa commit a97ea53

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

57 files changed

+1132
-1082
lines changed

Documentation/pyverbs.md

Lines changed: 45 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -164,12 +164,12 @@ device must be opened prior to creation and a PD has to be allocated.
164164
import pyverbs.device as d
165165
from pyverbs.pd import PD
166166
from pyverbs.mr import MR
167-
import pyverbs.enums as e
167+
from pyverbs.libibverbs_enums import ibv_access_flags
168168

169169
with d.Context(name='mlx5_0') as ctx:
170170
with PD(ctx) as pd:
171171
mr_len = 1000
172-
flags = e.IBV_ACCESS_LOCAL_WRITE
172+
flags = ibv_access_flags.IBV_ACCESS_LOCAL_WRITE
173173
mr = MR(pd, mr_len, flags)
174174
```
175175
##### Memory window
@@ -181,11 +181,11 @@ deregister an MR that the MW is bound to.
181181
import pyverbs.device as d
182182
from pyverbs.pd import PD
183183
from pyverbs.mr import MW
184-
import pyverbs.enums as e
184+
from pyverbs.libibverbs_enums import ibv_mw_type
185185

186186
with d.Context(name='mlx5_0') as ctx:
187187
with PD(ctx) as pd:
188-
mw = MW(pd, e.IBV_MW_TYPE_1)
188+
mw = MW(pd, ibv_mw_type.IBV_MW_TYPE_1)
189189
```
190190
##### Device memory
191191
The following snippet shows how to allocate a DM - a direct memory object,
@@ -214,7 +214,7 @@ from pyverbs.device import DM, AllocDmAttr
214214
from pyverbs.mr import DMMR
215215
import pyverbs.device as d
216216
from pyverbs.pd import PD
217-
import pyverbs.enums as e
217+
from pyverbs.libibverbs_enums import ibv_access_flags
218218

219219
with d.Context(name='mlx5_0') as ctx:
220220
attr = ctx.query_device_ex()
@@ -224,7 +224,7 @@ with d.Context(name='mlx5_0') as ctx:
224224
dm_mr_len = random.randint(4, dm_len)
225225
with DM(ctx, dm_attrs) as dm:
226226
with PD(ctx) as pd:
227-
dm_mr = DMMR(pd, dm_mr_len, e.IBV_ACCESS_ZERO_BASED, dm=dm,
227+
dm_mr = DMMR(pd, dm_mr_len, ibv_access_flags.IBV_ACCESS_ZERO_BASED, dm=dm,
228228
offset=0)
229229
```
230230

@@ -262,11 +262,11 @@ import random
262262

263263
from pyverbs.cq import CqInitAttrEx, CQEX
264264
import pyverbs.device as d
265-
import pyverbs.enums as e
265+
from pyverbs.libibverbs_enums import ibv_create_cq_wc_flags
266266

267267
with d.Context(name='mlx5_0') as ctx:
268268
num_cqe = random.randint(0, 200)
269-
wc_flags = e.IBV_WC_EX_WITH_CVLAN
269+
wc_flags = ibv_create_cq_wc_flags.IBV_WC_EX_WITH_CVLAN
270270
comp_mask = 0 # Not using flags in this example
271271
# completion channel is not used in this example
272272
attrs = CqInitAttrEx(cqe=num_cqe, wc_flags=wc_flags, comp_mask=comp_mask,
@@ -318,7 +318,7 @@ from pyverbs.qp import QPCap, QPInitAttr, QPAttr, QP
318318
from pyverbs.addr import GlobalRoute
319319
from pyverbs.addr import AH, AHAttr
320320
import pyverbs.device as d
321-
import pyverbs.enums as e
321+
from pyverbs.libibverbs_enums import ibv_qp_type
322322
from pyverbs.pd import PD
323323
from pyverbs.cq import CQ
324324
import pyverbs.wr as pwr
@@ -328,7 +328,7 @@ ctx = d.Context(name='mlx5_0')
328328
pd = PD(ctx)
329329
cq = CQ(ctx, 100, None, None, 0)
330330
cap = QPCap(100, 10, 1, 1, 0)
331-
qia = QPInitAttr(cap=cap, qp_type = e.IBV_QPT_UD, scq=cq, rcq=cq)
331+
qia = QPInitAttr(cap=cap, qp_type = ibv_qp_type.IBV_QPT_UD, scq=cq, rcq=cq)
332332
# A UD QP will be in RTS if a QPAttr object is provided
333333
udqp = QP(pd, qia, QPAttr())
334334
port_num = 1
@@ -351,7 +351,7 @@ when using the extended QP's new post send mechanism.
351351
```python
352352
from pyverbs.qp import QPCap, QPInitAttrEx, QPAttr, QPEx
353353
import pyverbs.device as d
354-
import pyverbs.enums as e
354+
from pyverbs.libibverbs_enums import ibv_qp_type, ibv_qp_init_attr_mask
355355
from pyverbs.pd import PD
356356
from pyverbs.cq import CQ
357357

@@ -360,9 +360,9 @@ ctx = d.Context(name='mlx5_0')
360360
pd = PD(ctx)
361361
cq = CQ(ctx, 100)
362362
cap = QPCap(100, 10, 1, 1, 0)
363-
qia = QPInitAttrEx(qp_type=e.IBV_QPT_UD, scq=cq, rcq=cq, cap=cap, pd=pd,
364-
comp_mask=e.IBV_QP_INIT_ATTR_SEND_OPS_FLAGS| \
365-
e.IBV_QP_INIT_ATTR_PD)
363+
qia = QPInitAttrEx(qp_type=ibv_qp_type.IBV_QPT_UD, scq=cq, rcq=cq, cap=cap, pd=pd,
364+
comp_mask=ibv_qp_init_attr_mask.IBV_QP_INIT_ATTR_SEND_OPS_FLAGS| \
365+
ibv_qp_init_attr_mask.IBV_QP_INIT_ATTR_PD)
366366
qp = QPEx(ctx, qia)
367367
```
368368

@@ -371,15 +371,15 @@ The following code demonstrates creation of an XRCD object.
371371
```python
372372
from pyverbs.xrcd import XRCD, XRCDInitAttr
373373
import pyverbs.device as d
374-
import pyverbs.enums as e
374+
from pyverbs.libibverbs_enums import ibv_xrcd_init_attr_mask
375375
import stat
376376
import os
377377

378378

379379
ctx = d.Context(name='ibp0s8f0')
380380
xrcd_fd = os.open('/tmp/xrcd', os.O_RDONLY | os.O_CREAT,
381381
stat.S_IRUSR | stat.S_IRGRP)
382-
init = XRCDInitAttr(e.IBV_XRCD_INIT_ATTR_FD | e.IBV_XRCD_INIT_ATTR_OFLAGS,
382+
init = XRCDInitAttr(ibv_xrcd_init_attr_mask.IBV_XRCD_INIT_ATTR_FD | ibv_xrcd_init_attr_mask.IBV_XRCD_INIT_ATTR_OFLAGS,
383383
os.O_CREAT, xrcd_fd)
384384
xrcd = XRCD(ctx, init)
385385
```
@@ -391,7 +391,7 @@ For more complex examples, please see pyverbs/tests/test_odp.
391391
from pyverbs.xrcd import XRCD, XRCDInitAttr
392392
from pyverbs.srq import SRQ, SrqInitAttrEx
393393
import pyverbs.device as d
394-
import pyverbs.enums as e
394+
from pyverbs.libibverbs_enums import ibv_xrcd_init_attr_mask, ibv_srq_type, ibv_srq_init_attr_mask
395395
from pyverbs.cq import CQ
396396
from pyverbs.pd import PD
397397
import stat
@@ -403,17 +403,17 @@ pd = PD(ctx)
403403
cq = CQ(ctx, 100, None, None, 0)
404404
xrcd_fd = os.open('/tmp/xrcd', os.O_RDONLY | os.O_CREAT,
405405
stat.S_IRUSR | stat.S_IRGRP)
406-
init = XRCDInitAttr(e.IBV_XRCD_INIT_ATTR_FD | e.IBV_XRCD_INIT_ATTR_OFLAGS,
406+
init = XRCDInitAttr(ibv_xrcd_init_attr_mask.IBV_XRCD_INIT_ATTR_FD | ibv_xrcd_init_attr_mask.IBV_XRCD_INIT_ATTR_OFLAGS,
407407
os.O_CREAT, xrcd_fd)
408408
xrcd = XRCD(ctx, init)
409409

410410
srq_attr = SrqInitAttrEx(max_wr=10)
411-
srq_attr.srq_type = e.IBV_SRQT_XRC
411+
srq_attr.srq_type = ibv_srq_type.IBV_SRQT_XRC
412412
srq_attr.pd = pd
413413
srq_attr.xrcd = xrcd
414414
srq_attr.cq = cq
415-
srq_attr.comp_mask = e.IBV_SRQ_INIT_ATTR_TYPE | e.IBV_SRQ_INIT_ATTR_PD | \
416-
e.IBV_SRQ_INIT_ATTR_CQ | e.IBV_SRQ_INIT_ATTR_XRCD
415+
srq_attr.comp_mask = ibv_srq_init_attr_mask.IBV_SRQ_INIT_ATTR_TYPE | ibv_srq_init_attr_mask.IBV_SRQ_INIT_ATTR_PD | \
416+
ibv_srq_init_attr_mask.IBV_SRQ_INIT_ATTR_CQ | ibv_srq_init_attr_mask.IBV_SRQ_INIT_ATTR_XRCD
417417
srq = SRQ(ctx, srq_attr)
418418
```
419419

@@ -476,9 +476,9 @@ following PRs.
476476
```python
477477
from pyverbs.providers.mlx5.mlx5dv import Mlx5Context, Mlx5DVContextAttr
478478
from pyverbs.providers.mlx5.mlx5dv import Mlx5DVQPInitAttr, Mlx5QP
479-
import pyverbs.providers.mlx5.mlx5_enums as me
479+
from pyverbs.providers.mlx5.mlx5_enums import mlx5dv_qp_init_attr_mask, mlx5dv_dc_type, mlx5dv_qp_create_flags
480480
from pyverbs.qp import QPInitAttrEx, QPCap
481-
import pyverbs.enums as e
481+
from pyverbs.libibverbs_enums import ibv_qp_type, ibv_qp_init_attr_mask, ibv_qp_type
482482
from pyverbs.cq import CQ
483483
from pyverbs.pd import PD
484484

@@ -487,19 +487,19 @@ with Mlx5Context(name='rocep0s8f0', attr=Mlx5DVContextAttr()) as ctx:
487487
with CQ(ctx, 100) as cq:
488488
cap = QPCap(100, 0, 1, 0)
489489
# Create a DC QP of type DCI
490-
qia = QPInitAttrEx(cap=cap, pd=pd, scq=cq, qp_type=e.IBV_QPT_DRIVER,
491-
comp_mask=e.IBV_QP_INIT_ATTR_PD, rcq=cq)
492-
attr = Mlx5DVQPInitAttr(comp_mask=me.MLX5DV_QP_INIT_ATTR_MASK_DC)
493-
attr.dc_type = me.MLX5DV_DCTYPE_DCI
490+
qia = QPInitAttrEx(cap=cap, pd=pd, scq=cq, qp_type=ibv_qp_type.IBV_QPT_DRIVER,
491+
comp_mask=ibv_qp_init_attr_mask.IBV_QP_INIT_ATTR_PD, rcq=cq)
492+
attr = Mlx5DVQPInitAttr(comp_mask=mlx5dv_qp_init_attr_mask.MLX5DV_QP_INIT_ATTR_MASK_DC)
493+
attr.dc_type = mlx5dv_dc_type.MLX5DV_DCTYPE_DCI
494494

495495
dci = Mlx5QP(ctx, qia, dv_init_attr=attr)
496496

497497
# Create a Raw Packet QP using mlx5-specific capabilities
498-
qia.qp_type = e.IBV_QPT_RAW_PACKET
499-
attr.comp_mask = me.MLX5DV_QP_INIT_ATTR_MASK_QP_CREATE_FLAGS
500-
attr.create_flags = me.MLX5DV_QP_CREATE_ALLOW_SCATTER_TO_CQE |\
501-
me.MLX5DV_QP_CREATE_TIR_ALLOW_SELF_LOOPBACK_UC |\
502-
me.MLX5DV_QP_CREATE_TUNNEL_OFFLOADS
498+
qia.qp_type = ibv_qp_type.IBV_QPT_RAW_PACKET
499+
attr.comp_mask = mlx5dv_qp_init_attr_mask.MLX5DV_QP_INIT_ATTR_MASK_QP_CREATE_FLAGS
500+
attr.create_flags = mlx5dv_qp_create_flags.MLX5DV_QP_CREATE_ALLOW_SCATTER_TO_CQE | \
501+
mlx5dv_qp_create_flags.MLX5DV_QP_CREATE_TIR_ALLOW_SELF_LOOPBACK_UC | \
502+
mlx5dv_qp_create_flags.MLX5DV_QP_CREATE_TUNNEL_OFFLOADS
503503
qp = Mlx5QP(ctx, qia, dv_init_attr=attr)
504504
```
505505

@@ -512,13 +512,13 @@ The following snippet shows this simple creation process.
512512
```python
513513
from pyverbs.providers.mlx5.mlx5dv import Mlx5Context, Mlx5DVContextAttr
514514
from pyverbs.providers.mlx5.mlx5dv import Mlx5DVCQInitAttr, Mlx5CQ
515-
import pyverbs.providers.mlx5.mlx5_enums as me
515+
from pyverbs.providers.mlx5.mlx5_enums import mlx5dv_cq_init_attr_mask, mlx5dv_cqe_comp_res_format
516516
from pyverbs.cq import CqInitAttrEx
517517

518518
with Mlx5Context(name='rocep0s8f0', attr=Mlx5DVContextAttr()) as ctx:
519519
cqia = CqInitAttrEx()
520-
mlx5_cqia = Mlx5DVCQInitAttr(comp_mask=me.MLX5DV_CQ_INIT_ATTR_MASK_COMPRESSED_CQE,
521-
cqe_comp_res_format=me.MLX5DV_CQE_RES_FORMAT_CSUM)
520+
mlx5_cqia = Mlx5DVCQInitAttr(comp_mask=mlx5dv_cq_init_attr_mask.MLX5DV_CQ_INIT_ATTR_MASK_COMPRESSED_CQE,
521+
cqe_comp_res_format=mlx5dv_cqe_comp_res_format.MLX5DV_CQE_RES_FORMAT_CSUM)
522522
cq = Mlx5CQ(ctx, cqia, dv_init_attr=mlx5_cqia)
523523
```
524524

@@ -530,8 +530,7 @@ For more complex examples, please see tests/test_rdmacm.
530530
```python
531531
from pyverbs.qp import QPInitAttr, QPCap
532532
from pyverbs.cmid import CMID, AddrInfo
533-
import pyverbs.cm_enums as ce
534-
533+
from pyverbs.librdmacm_enums import rdma_port_space, RAI_PASSIVE
535534

536535
cap = QPCap(max_recv_wr=1)
537536
qp_init_attr = QPInitAttr(cap=cap)
@@ -540,15 +539,15 @@ port = '7471'
540539

541540
# Passive side
542541

543-
sai = AddrInfo(src=addr, src_service=port, port_space=ce.RDMA_PS_TCP, flags=ce.RAI_PASSIVE)
542+
sai = AddrInfo(src=addr, src_service=port, port_space=rdma_port_space.RDMA_PS_TCP, flags=RAI_PASSIVE)
544543
sid = CMID(creator=sai, qp_init_attr=qp_init_attr)
545544
sid.listen() # listen for incoming connection requests
546545
new_id = sid.get_request() # check if there are any connection requests
547546
new_id.accept() # new_id is connected to remote peer and ready to communicate
548547

549548
# Active side
550549

551-
cai = AddrInfo(src=addr, dst=addr, dst_service=port, port_space=ce.RDMA_PS_TCP)
550+
cai = AddrInfo(src=addr, dst=addr, dst_service=port, port_space=rdma_port_space.RDMA_PS_TCP)
552551
cid = CMID(creator=cai, qp_init_attr=qp_init_attr)
553552
cid.connect() # send connection request to passive addr
554553
```
@@ -604,10 +603,10 @@ The following code snippet demonstrates how to allocate an mlx5dv_pp with rate
604603
limit value of 5, then frees the entry.
605604
```python
606605
from pyverbs.providers.mlx5.mlx5dv import Mlx5Context, Mlx5DVContextAttr, Mlx5PP
607-
import pyverbs.providers.mlx5.mlx5_enums as e
606+
from pyverbs.providers.mlx5.mlx5_enums import mlx5dv_context_attr_flags
608607

609608
# The device must be opened as DEVX context
610-
mlx5dv_attr = Mlx5DVContextAttr(e.MLX5DV_CONTEXT_FLAGS_DEVX)
609+
mlx5dv_attr = Mlx5DVContextAttr(mlx5dv_context_attr_flags.MLX5DV_CONTEXT_FLAGS_DEVX)
611610
ctx = Mlx5Context(attr=mlx5dv_attr, name='rocep0s8f0')
612611
rate_limit_inbox = (5).to_bytes(length=4, byteorder='big', signed=True)
613612
pp = Mlx5PP(ctx, rate_limit_inbox)
@@ -650,18 +649,18 @@ Here is a demonstration of importing a device, PD and MR in one process.
650649
from pyverbs.device import Context
651650
from pyverbs.pd import PD
652651
from pyverbs.mr import MR
653-
import pyverbs.enums as e
652+
from pyverbs.libibverbs_enums import ibv_access_flags
654653
import os
655654

656655
ctx = Context(name='ibp0s8f0')
657656
pd = PD(ctx)
658-
mr = MR(pd, 100, e.IBV_ACCESS_LOCAL_WRITE)
657+
mr = MR(pd, 100, ibv_access_flags.IBV_ACCESS_LOCAL_WRITE)
659658
cmd_fd_dup = os.dup(ctx.cmd_fd)
660659
imported_ctx = Context(cmd_fd=cmd_fd_dup)
661660
imported_pd = PD(imported_ctx, handle=pd.handle)
662661
imported_mr = MR(imported_pd, handle=mr.handle)
663662
# MRs can be created as usual on the imported PD
664-
secondary_mr = MR(imported_pd, 100, e.IBV_ACCESS_REMOTE_READ)
663+
secondary_mr = MR(imported_pd, 100, ibv_access_flags.IBV_ACCESS_REMOTE_READ)
665664
# Must manually unimport the imported objects (which close the object and frees
666665
# other resources that use them) before closing the "original" objects.
667666
# This prevents unexpected behaviours caused by the GC.
@@ -683,7 +682,7 @@ from pyverbs.qp import QPCap, QPInitAttr, QPAttr, QP
683682
from pyverbs.flow import FlowAttr, Flow
684683
from pyverbs.spec import EthSpec
685684
import pyverbs.device as d
686-
import pyverbs.enums as e
685+
from pyverbs.libibverbs_enums import ibv_qp_type
687686
from pyverbs.pd import PD
688687
from pyverbs.cq import CQ
689688

@@ -692,7 +691,7 @@ ctx = d.Context(name='rocep0s8f0')
692691
pd = PD(ctx)
693692
cq = CQ(ctx, 100, None, None, 0)
694693
cap = QPCap(100, 10, 1, 1, 0)
695-
qia = QPInitAttr(cap=cap, qp_type = e.IBV_QPT_UD, scq=cq, rcq=cq)
694+
qia = QPInitAttr(cap=cap, qp_type = ibv_qp_type.IBV_QPT_UD, scq=cq, rcq=cq)
696695
qp = QP(pd, qia, QPAttr())
697696

698697
# Create Eth spec

pyverbs/CMakeLists.txt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,14 +21,12 @@ endif()
2121
rdma_cython_module(pyverbs ""
2222
addr.pyx
2323
base.pyx
24-
cm_enums.pyx
2524
cmid.pyx
2625
cq.pyx
2726
device.pyx
2827
${DMA_UTIL}
2928
dmabuf.pyx
3029
${DMABUF_ALLOC}
31-
enums.pyx
3230
flow.pyx
3331
fork.pyx
3432
libibverbs.pyx

pyverbs/cm_enums.pyx

Lines changed: 0 additions & 1 deletion
This file was deleted.

pyverbs/enums.pyx

Lines changed: 0 additions & 1 deletion
This file was deleted.

pyverbs/libibverbs_enums.pxd

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -510,16 +510,6 @@ cdef extern from "<infiniband/verbs_api.h>":
510510
cdef unsigned long long IBV_ADVISE_MR_FLAG_FLUSH
511511
cdef unsigned long long IBV_ADVISE_MR_ADVICE_PREFETCH_NO_FAULT
512512

513-
514-
_IBV_DEVICE_RAW_SCATTER_FCS = IBV_DEVICE_RAW_SCATTER_FCS
515-
_IBV_DEVICE_PCI_WRITE_END_PADDING = IBV_DEVICE_PCI_WRITE_END_PADDING
516-
_IBV_ALLOCATOR_USE_DEFAULT = <size_t>IBV_ALLOCATOR_USE_DEFAULT
517-
_IBV_ADVISE_MR_ADVICE_PREFETCH = IBV_ADVISE_MR_ADVICE_PREFETCH
518-
_IBV_ADVISE_MR_ADVICE_PREFETCH_WRITE = IBV_ADVISE_MR_ADVICE_PREFETCH_WRITE
519-
_IBV_ADVISE_MR_FLAG_FLUSH = IBV_ADVISE_MR_FLAG_FLUSH
520-
_IBV_ADVISE_MR_ADVICE_PREFETCH_NO_FAULT = IBV_ADVISE_MR_ADVICE_PREFETCH_NO_FAULT
521-
522-
523513
cdef extern from '<infiniband/driver.h>':
524514
cpdef enum ibv_gid_type_sysfs:
525515
IBV_GID_TYPE_SYSFS_IB_ROCE_V1

pyverbs/libibverbs_enums.pyx

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
from pyverbs.libibverbs_enums cimport (
2+
IBV_DEVICE_RAW_SCATTER_FCS,
3+
IBV_DEVICE_PCI_WRITE_END_PADDING,
4+
IBV_ADVISE_MR_ADVICE_PREFETCH,
5+
IBV_ADVISE_MR_ADVICE_PREFETCH_WRITE,
6+
IBV_ADVISE_MR_FLAG_FLUSH,
7+
IBV_ADVISE_MR_ADVICE_PREFETCH_NO_FAULT,
8+
IBV_ALLOCATOR_USE_DEFAULT,
9+
)
10+
11+
from libc.stddef cimport size_t
12+
13+
_IBV_DEVICE_RAW_SCATTER_FCS = IBV_DEVICE_RAW_SCATTER_FCS
14+
_IBV_DEVICE_PCI_WRITE_END_PADDING = IBV_DEVICE_PCI_WRITE_END_PADDING
15+
_IBV_ALLOCATOR_USE_DEFAULT = <size_t>IBV_ALLOCATOR_USE_DEFAULT
16+
_IBV_ADVISE_MR_ADVICE_PREFETCH = IBV_ADVISE_MR_ADVICE_PREFETCH
17+
_IBV_ADVISE_MR_ADVICE_PREFETCH_WRITE = IBV_ADVISE_MR_ADVICE_PREFETCH_WRITE
18+
_IBV_ADVISE_MR_FLAG_FLUSH = IBV_ADVISE_MR_FLAG_FLUSH
19+
_IBV_ADVISE_MR_ADVICE_PREFETCH_NO_FAULT = IBV_ADVISE_MR_ADVICE_PREFETCH_NO_FAULT

pyverbs/providers/efa/efadv.pyx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ cimport pyverbs.providers.efa.libefa as dv
77
from pyverbs.addr cimport GID
88
from pyverbs.base import PyverbsRDMAErrno, PyverbsRDMAError
99
from pyverbs.cq cimport CQEX, CqInitAttrEx
10-
import pyverbs.enums as e
10+
from pyverbs.libibverbs_enums import ibv_qp_attr_mask
1111
cimport pyverbs.libibverbs as v
1212
from pyverbs.pd cimport PD
1313
from pyverbs.qp cimport QP, QPEx, QPInitAttr, QPInitAttrEx
@@ -212,10 +212,10 @@ cdef class SRDQPEx(QPEx):
212212
super().__init__(ctx, attr_ex)
213213

214214
def _get_comp_mask(self, dst):
215-
srd_mask = {'INIT': e.IBV_QP_PKEY_INDEX | e.IBV_QP_PORT | e.IBV_QP_QKEY,
215+
srd_mask = {'INIT': ibv_qp_attr_mask.IBV_QP_PKEY_INDEX | ibv_qp_attr_mask.IBV_QP_PORT | ibv_qp_attr_mask.IBV_QP_QKEY,
216216
'RTR': 0,
217-
'RTS': e.IBV_QP_SQ_PSN}
218-
return srd_mask [dst] | e.IBV_QP_STATE
217+
'RTS': ibv_qp_attr_mask.IBV_QP_SQ_PSN}
218+
return srd_mask [dst] | ibv_qp_attr_mask.IBV_QP_STATE
219219

220220

221221
cdef class EfaDVCQInitAttr(PyverbsObject):

pyverbs/providers/mlx5/dr_action.pyx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ from pyverbs.base import PyverbsRDMAErrno, PyverbsRDMAError
55
from pyverbs.providers.mlx5.dr_domain cimport DrDomain
66
from pyverbs.providers.mlx5.mlx5dv cimport Mlx5DevxObj
77
from pyverbs.providers.mlx5.dr_rule cimport DrRule
8-
import pyverbs.providers.mlx5.mlx5_enums as dve
8+
from pyverbs.providers.mlx5.mlx5_enums import mlx5dv_dr_action_dest_type
99
from pyverbs.pyverbs_error import PyverbsError
1010
from pyverbs.base cimport close_weakrefs
1111
from libc.stdlib cimport calloc, free
@@ -216,15 +216,15 @@ cdef class DrActionDestAttr(PyverbsCM):
216216
super().__init__()
217217
self.dest_reformat = NULL
218218
self.action_dest_attr = NULL
219-
if action_type == dve.MLX5DV_DR_ACTION_DEST:
219+
if action_type == mlx5dv_dr_action_dest_type.MLX5DV_DR_ACTION_DEST:
220220
self.action_dest_attr = <dv.mlx5dv_dr_action_dest_attr *> calloc(
221221
1, sizeof(dv.mlx5dv_dr_action_dest_attr))
222222
if self.action_dest_attr == NULL:
223223
raise PyverbsRDMAErrno('Memory allocation for DrActionDestAttr failed.')
224224
self.action_dest_attr.type = action_type
225225
self.action_dest_attr.dest = dest.action
226226
self.dest = dest
227-
elif action_type == dve.MLX5DV_DR_ACTION_DEST_REFORMAT:
227+
elif action_type == mlx5dv_dr_action_dest_type.MLX5DV_DR_ACTION_DEST_REFORMAT:
228228
self.dest_reformat = <dv.mlx5dv_dr_action_dest_reformat *> calloc(
229229
1, sizeof(dv.mlx5dv_dr_action_dest_reformat))
230230
if self.dest_reformat == NULL:

0 commit comments

Comments
 (0)