/
test_mlx5_udp_sport.py
37 lines (32 loc) · 1.29 KB
/
test_mlx5_udp_sport.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import unittest
import errno
from pyverbs.pyverbs_error import PyverbsRDMAError
from pyverbs.providers.mlx5.mlx5dv import Mlx5QP
from tests.mlx5_base import Mlx5RDMATestCase
from tests.base import RCResources
import pyverbs.enums as e
import tests.utils as u
class UdpSportTestCase(Mlx5RDMATestCase):
def __init__(self, methodName='runTest', dev_name=None, ib_port=None,
gid_index=None, pkey_index=None, gid_type=e.IBV_GID_TYPE_SYSFS_ROCE_V2):
# Modify UDP source port is not supported on RoCEv1
super().__init__(methodName, dev_name, ib_port, gid_index, pkey_index, gid_type)
def setUp(self):
super().setUp()
self.iters = 10
self.server = None
self.client = None
def test_rc_modify_udp_sport(self):
"""
Create RC resources and change the server QP's UDP source port to an
arbitrary legal value (55555). Then run SEND traffic.
:return: None
"""
self.create_players(RCResources)
try:
Mlx5QP.modify_udp_sport(self.server.qp, udp_sport=55555)
except PyverbsRDMAError as ex:
if ex.error_code == errno.EOPNOTSUPP:
raise unittest.SkipTest('Modifying a QP UDP sport is not supported')
raise ex
u.traffic(**self.traffic_args)