diff options
author | Vratko Polak <vrpolak@cisco.com> | 2023-05-22 10:14:09 +0200 |
---|---|---|
committer | Vratko Polak <vrpolak@cisco.com> | 2023-05-22 10:14:09 +0200 |
commit | 6e862ec7b63e177b9b0103612848b3377271729b (patch) | |
tree | 66cc7d86e049536acf5246c4159c9483df2ee1aa /resources/libraries/robot/shared | |
parent | ec194ef8ecfa656b9b1d5056b49dd3877d1268e1 (diff) |
feat(interface): apply MTU for dpdk plugin ifaces
When changing MTU on a running VPP, the interface has to be down.
- Other plugins (rdma, avf, af_xdp) need vastly different logic,
so support for them will be added later.
+ Mlx5-core does not need to set MTU on Linux interface.
+ MTU setting now does not happen at final setting path up,
it happens in driver initialization layer instead
E.g. AVF tests will not attempt to change MTU.
+ MTU edit removed from some non-hardware interfaces (including memif)
e.g. bond interfaces. MTU on parent hw interface seems to be enough.
+ The non-jumbo MTU value used is 1800,
so 1518B tests with additional encapsulation can still work.
+ When VPP MTU setting fails, the failure is now propagated.
Previously, the failure was just logged and ignored,
but now there is no reason to hide it.
Ticket: CSIT-1797
Change-Id: I3b853f1faf90001d544cbbb87b2affbb882ffba0
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
Diffstat (limited to 'resources/libraries/robot/shared')
-rw-r--r-- | resources/libraries/robot/shared/interfaces.robot | 34 |
1 files changed, 14 insertions, 20 deletions
diff --git a/resources/libraries/robot/shared/interfaces.robot b/resources/libraries/robot/shared/interfaces.robot index 6279dd0bd2..a905373401 100644 --- a/resources/libraries/robot/shared/interfaces.robot +++ b/resources/libraries/robot/shared/interfaces.robot @@ -22,7 +22,7 @@ | Set single interfaces in path up | | [Documentation] | | ... | *Set UP state on single physical VPP interfaces in path on all DUT -| | ... | nodes and set maximal MTU.* +| | ... | nodes.* | | | | ... | *Arguments:* | | ... | - pf - NIC physical function (physical port). @@ -41,8 +41,7 @@ | Set interfaces in path up | | [Documentation] -| | ... | *Set UP state on VPP interfaces in path on all DUT nodes and set -| | ... | maximal MTU.* +| | ... | *Set UP state on VPP interfaces in path on all DUT nodes.* | | | | ... | *Arguments:* | | ... | - validate - Validate interfaces are up. @@ -58,8 +57,7 @@ | Set interfaces in path up on node | | [Documentation] -| | ... | *Set UP state on VPP interfaces in path on specified DUT node and -| | ... | set maximal MTU.* +| | ... | *Set UP state on VPP interfaces in path on specified DUT node.* | | | | ... | *Arguments:* | | ... | - dut - DUT node on which to set the interfaces up. @@ -77,8 +75,7 @@ | Set interfaces in path up on node on PF | | [Documentation] -| | ... | *Set UP state on VPP interfaces in path on specified DUT node and -| | ... | set maximal MTU.* +| | ... | *Set UP state on VPP interfaces in path on specified DUT node.* | | | | ... | *Arguments:* | | ... | - dut - DUT node on which to set the interfaces up. @@ -97,7 +94,6 @@ | | ${_id}= | Set Variable If | '${_chains}' == 'PASS' | _1 | ${EMPTY} | | FOR | ${if} | IN | @{${dut}_${int}${pf}${_id}} | | | Set Interface State | ${nodes['${dut}']} | ${if} | up -| | | VPP Set Interface MTU | ${nodes['${dut}']} | ${if} | | END | Pre-initialize layer driver @@ -181,10 +177,8 @@ | | ... | Pre-initialize rdma-core driver. | | | | FOR | ${dut} | IN | @{duts} -| | | Run Keyword If | ${jumbo} -| | | ... | Set Interface MTU | ${nodes['${dut}']} | ${${dut}_pf_pci} | mtu=9200 -| | | ... | ELSE -| | | ... | Set Interface MTU | ${nodes['${dut}']} | ${${dut}_pf_pci} | mtu=1518 +| | | Set Interface MTU | ${nodes['${dut}']} | ${${dut}_pf_pci} +| | | ... | mtu=${recommended_mtu} | | | Set Interface Flow Control | | | ... | ${nodes['${dut}']} | ${${dut}_pf_pci} | rxf="off" | txf="off" | | END @@ -194,10 +188,6 @@ | | ... | Pre-initialize mlx5_core driver. | | | | FOR | ${dut} | IN | @{duts} -| | | Run Keyword If | ${jumbo} -| | | ... | Set Interface MTU | ${nodes['${dut}']} | ${${dut}_pf_pci} | mtu=9200 -| | | ... | ELSE -| | | ... | Set Interface MTU | ${nodes['${dut}']} | ${${dut}_pf_pci} | mtu=1518 | | | Set Interface Flow Control | | | ... | ${nodes['${dut}']} | ${${dut}_pf_pci} | rxf="off" | txf="off" | | END @@ -357,7 +347,7 @@ | Initialize layer vfio-pci on node | | [Documentation] | | ... | Initialize vfio-pci interfaces on DUT on NIC PF. -| | ... | Currently no operation. +| | ... | Currently just set MTU to the recommended value. | | | | ... | *Arguments:* | | ... | - dut - DUT node. Type: string @@ -369,7 +359,9 @@ | | | | [Arguments] | ${dut} | ${pf} | | -| | No operation +| | Set Interface State | ${nodes['${dut}']} | ${${dut}_pf${pf}}[0] | down +| | VPP Set Interface MTU +| | ... | ${nodes['${dut}']} | ${${dut}_pf${pf}}[0] | mtu=${recommended_mtu} | Initialize layer avf on node | | [Documentation] @@ -457,7 +449,7 @@ | Initialize layer mlx5_core on node | | [Documentation] | | ... | Initialize mlx5_core interfaces on DUT on NIC PF. -| | ... | Currently no operation. +| | ... | Currently just set MTU to the recommended value. | | | | ... | *Arguments:* | | ... | - dut - DUT node. Type: string @@ -469,7 +461,9 @@ | | | | [Arguments] | ${dut} | ${pf} | | -| | No operation +| | Set Interface State | ${nodes['${dut}']} | ${${dut}_pf${pf}}[0] | down +| | VPP Set Interface MTU +| | ... | ${nodes['${dut}']} | ${${dut}_pf${pf}}[0] | mtu=${recommended_mtu} | Initialize layer interface | | [Documentation] |