aboutsummaryrefslogtreecommitdiffstats
path: root/resources
diff options
context:
space:
mode:
authorVratko Polak <vrpolak@cisco.com>2023-07-14 17:01:34 +0200
committerVratko Polak <vrpolak@cisco.com>2023-07-14 17:01:34 +0200
commitc461e9407dc7d10a27780e0140088ae0b1adf6e8 (patch)
tree6372aa0ac8a3c21a73e8a204bd6a342421e66de7 /resources
parentc1c75eaaba3d25309315ac27c8aa11b4d7834151 (diff)
feat(crc): bump messages for cycle after 2306
The supported VPP code is 380c62d7040bf285d449f1d05692141c40089470 which is the latest commit before stable/2306 diverged from master. + Separate messages into blocks with paths to .api sources. + Prepare memif for use_dma (currently always false). + Use srv6 test teardown action in srv6 device tests. - Do not use sr_policy_add_v2 from 37258 yet. - Leave a TODO to do it eventually, for now inputs are too different. - Do not use index based policer calls from 37873. - The policer_add_del is not deprecated yet and inputs are different. Change-Id: I350138f09542ec12ce4bec140203175940ccf9d4 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
Diffstat (limited to 'resources')
-rw-r--r--resources/api/vpp/supported_crcs.yaml123
-rw-r--r--resources/libraries/python/Memif.py20
-rw-r--r--resources/libraries/python/SRv6.py6
3 files changed, 132 insertions, 17 deletions
diff --git a/resources/api/vpp/supported_crcs.yaml b/resources/api/vpp/supported_crcs.yaml
index 522dc44ba2..3a11094067 100644
--- a/resources/api/vpp/supported_crcs.yaml
+++ b/resources/api/vpp/supported_crcs.yaml
@@ -30,8 +30,9 @@
# Use bash command "env LC_COLLATE=C sort -u" if not clear.
# https://packagecloud.io/app/fdio/release
-# /search?q=23.02&filter=debs&filter=all&dist=debian
-23.02-release:
+# /search?q=23.06&filter=debs&filter=all&dist=debian
+23.06-release:
+ # plugins/acl/acl.api
acl_add_replace: '0xee5c2f18' # dev
acl_add_replace_reply: '0xac407b0c' # dev
acl_details: '0x95babae0' # dev teardown
@@ -40,25 +41,39 @@
acl_interface_list_dump: '0xf9e6675e' # dev teardown
acl_interface_set_acl_list: '0x473982bd' # dev
acl_interface_set_acl_list_reply: '0xe8d4e804' # dev
+
+ # vlibmemory/vlib.api
add_node_next: '0x2457116d' # dev
add_node_next_reply: '0x2ed75f32' # dev
+
+ # plugins/adl/adl.api
adl_allowlist_enable_disable: '0xea88828d' # dev
adl_allowlist_enable_disable_reply: '0xe8d4e804' # dev
adl_interface_enable_disable: '0x5501adee' # dev
adl_interface_enable_disable_reply: '0xe8d4e804' # dev
+
+ # plugins/af_xdp/af_xdp.api
af_xdp_create_v2: '0xe17ec2eb' # dev
af_xdp_create_v2_reply: '0x5383d31f' # dev
+
+ # plugins/avf/avf.api
avf_create: '0xdaab8ae2' # dev
avf_create_reply: '0x5383d31f' # dev
+
+ # vnet/bonding/bond.api
bond_add_member: '0xe7d14948' # perf
bond_add_member_reply: '0xe8d4e804' # perf
bond_create2: '0x912fda76' # perf
bond_create2_reply: '0x5383d31f' # perf
# 4x^ 64B-1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr
# ^ ndrpdrAND1cAND64bAND1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
+
+ # vnet/l2/l2.api
bridge_domain_add_del_v2: '0x600b7170' # dev
bridge_domain_add_del_v2_reply: '0xfcb1e980' # dev
# bridge_domain_dump / details # honeycomb
+
+ # vnet/classify/classify.api
classify_add_del_session: '0xf20879f0' # dev
classify_add_del_session_reply: '0xe8d4e804' # dev
classify_add_del_table: '0x6849e39e' # dev
@@ -66,23 +81,37 @@
# classify_session_dump / details # honeycomb
# classify_table_by_interface / reply # honeycomb
# classify_table_info / reply # honeycomb
+
+ # vlibmemory/vlib.api
cli_inband: '0xf8377302' # dev setup
cli_inband_reply: '0x05879051' # dev setup
+
+ # vnet/interface.api
create_loopback_instance: '0xd36a3ee2' # dev
create_loopback_instance_reply: '0x5383d31f' # dev
+
+ # vnet/interface.api
create_subif: '0x790ca755' # perf
create_subif_reply: '0x5383d31f' # perf
# ^^ 64B-1c-dot1ad-l2xcbase-ndrpdr
# ^ ndrpdrAND1cAND64bANDdot1ad-l2xcbase
+
+ # plugins/vhost/vhost_user.api
create_vhost_user_if_v2: '0xdba1cc1d' # dev
create_vhost_user_if_v2_reply: '0x5383d31f' # dev
+
+ # vnet/interface.api
create_vlan_subif: '0xaf34ac8b' # dev
create_vlan_subif_reply: '0x5383d31f' # dev
+
+ # plugins/crypto_sw_scheduler/crypto_sw_scheduler.api
crypto_sw_scheduler_set_worker: '0xb4274502' # perf
crypto_sw_scheduler_set_worker_reply: '0xe8d4e804' # perf
# ^^ 64B-1c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr
# ^ ndrpdrAND1cAND64BANDethip4ipsec8tnlswasync-scheduler-ip4base-int-\
# aes128gcm-udir
+
+ # plugins/nat/det44/det44.api
det44_add_del_map: '0x1150a190' # dev
det44_add_del_map_reply: '0xe8d4e804' # dev
det44_interface_add_del_feature: '0xdc17a836' # dev
@@ -96,6 +125,8 @@
det44_session_dump: '0xe45a3af7' # dev
# TODO: Which test to run to verify det44_* messages?
# dhcp_proxy_dump / details # honeycomb
+
+ # vnet/flow/flow.api
flow_add_v2: '0x5b757558' # dev
flow_add_v2_reply: '0x8587dc85' # dev
flow_del: '0xb6b9b02c' # dev
@@ -104,35 +135,57 @@
flow_disable_reply: '0xe8d4e804' # dev
flow_enable: '0x2024be69' # dev
flow_enable_reply: '0xe8d4e804' # dev
+
+ # plugins/geneve/geneve.api
geneve_add_del_tunnel2: '0x8c2a9999' # dev
geneve_add_del_tunnel2_reply: '0x5383d31f' # dev
geneve_tunnel_details: '0x6b16eb24' # dev
geneve_tunnel_dump: '0xf9e6675e' # dev
+
+ # plugins/lisp/lisp-gpe/lisp_gpe.api
gpe_enable_disable: '0xc264d7bf' # dev
gpe_enable_disable_reply: '0xe8d4e804' # dev
+
# gre_tunnel_add_del / reply # unused L1 keyword: create_gre_tunnel_interface
+
+ # plugins/gtpu/gtpu.api
gtpu_add_del_tunnel: '0xca983a2b' # perf
gtpu_add_del_tunnel_reply: '0x5383d31f' # perf
# ^^ 64B-1c-ethip4gtpusw-ip4base-ndrpdr
# ^ ndrpdrAND1cAND64BANDethip4gtpusw-ip4base
gtpu_offload_rx: '0xf0b08786' # perf
gtpu_offload_rx_reply: '0xe8d4e804' # perf
+
+ # vnet/interface.api
hw_interface_set_mtu: '0xe6746899' # dev
hw_interface_set_mtu_reply: '0xe8d4e804' # dev
+
+ # vnet/classify/classify.api
input_acl_set_interface: '0xde7ad708' # dev
input_acl_set_interface_reply: '0xe8d4e804' # dev
+
+ # vnet/ip/ip.api
ip_address_details: '0xee29b797' # dev
ip_address_dump: '0x2d033de4' # dev
+
+ # vnet/ip-neighbor/ip_neighbor.api
ip_neighbor_add_del: '0x0607c257' # dev
ip_neighbor_add_del_reply: '0x1992deab' # dev
+
# ip_probe_neighbor / reply # unused L1 keyword vpp_ip_probe
+
+ # vnet/ip/ip.api
ip_route_add_del: '0xb8ecfe0d' # dev
ip_route_add_del_reply: '0x1992deab' # dev
# ip_source_check_interface_add_del / reply # unused L1 keyword vpp_ip_source_check_setup
ip_table_add_del: '0x0ffdaec0' # dev
ip_table_add_del_reply: '0xe8d4e804' # dev
+
+ # vnet/ipip/ipip.api
ipip_add_tunnel: '0x2ac399f5' # dev
ipip_add_tunnel_reply: '0x5383d31f' # dev
+
+ # vnet/ipsec/ipsec.api
ipsec_interface_add_del_spd: '0x80f80cbb' # dev
ipsec_interface_add_del_spd_reply: '0xe8d4e804' # dev
ipsec_sa_v3_details: '0x2fc991ee' # dev
@@ -153,6 +206,8 @@
ipsec_tunnel_protect_update_reply: '0xe8d4e804' # dev
# ^^ 64B-1c-ethip4ipsec1tnlhw-ip4base-int-aes256gcm-ndrpdr
# ^ See ipsec_select_backend.
+
+ # vnet/l2/l2.api
# l2_fib_table_dump / details # honeycomb
l2_interface_vlan_tag_rewrite: '0x62cc0bbc' # perf
l2_interface_vlan_tag_rewrite_reply: '0xe8d4e804' # perf
@@ -161,6 +216,8 @@
l2_patch_add_del: '0xa1f6a6f3' # dev
l2_patch_add_del_reply: '0xe8d4e804' # dev
# l2fib_add_del / reply # unused L1 keyword: vpp_add_l2fib_entry
+
+ # plugins/lb/lb.api
lb_add_del_as: '0x35d72500' # perf
lb_add_del_as_reply: '0xe8d4e804' # perf
lb_add_del_intf_nat4: '0x47d6e753' # perf
@@ -171,6 +228,8 @@
lb_conf_reply: '0xe8d4e804' # perf
# 8x^ 64B-1c-ethip4-loadbalancer-nat4-ndrpdr
# ^ 2n: ndrpdrAND1cAND64BANDethip4-loadbalancer-nat4
+
+ # plugins/lisp/lisp-cp/lisp.api
lisp_add_del_adjacency: '0x2ce0e6f6' # dev
lisp_add_del_adjacency_reply: '0xe8d4e804' # dev
lisp_add_del_local_eid: '0x4e5a83a2' # dev
@@ -186,6 +245,8 @@
lisp_eid_table_add_del_map_reply: '0xe8d4e804' # dev
lisp_enable_disable: '0xc264d7bf' # dev
lisp_enable_disable_reply: '0xe8d4e804' # dev
+
+ # plugins/acl/acl.api
macip_acl_add: '0xce6fbad0' # dev
macip_acl_add_reply: '0xac407b0c' # dev
macip_acl_details: '0x27135b59' # dev teardown
@@ -194,12 +255,16 @@
macip_acl_interface_add_del_reply: '0xe8d4e804' # dev
macip_acl_interface_get: '0x51077d14' # dev teardown
macip_acl_interface_get_reply: '0xaccf9b05' # dev teardown
- memif_create: '0xb1b25061' # dev
- memif_create_reply: '0x5383d31f' # dev
+
+ # plugins/memif/memif.api
+ memif_create_v2: '0x8c7de5f7' # dev
+ memif_create_v2_reply: '0x5383d31f' # dev
memif_details: '0xda34feb9' # dev
memif_dump: '0x51077d14' # dev
- memif_socket_filename_add_del: '0xa2ce1a10' # dev
- memif_socket_filename_add_del_reply: '0xe8d4e804' # dev
+ memif_socket_filename_add_del_v2: '0x34223bdf' # dev
+ memif_socket_filename_add_del_v2_reply: '0x9f29bdb9' # dev
+
+ # plugins/nat/nat44-ed/nat44_ed.api
nat44_add_del_address_range: '0x6f2b8055' # dev
nat44_add_del_address_range_reply: '0xe8d4e804' # dev
nat44_address_details: '0x0d1beac1' # dev teardown
@@ -220,30 +285,44 @@
# by show_nat_user_data function
nat_worker_details: '0x84bf06fc' # dev teardown
nat_worker_dump: '0x51077d14' # dev teardown
+
+ # plugins/nsim/nsim.api
nsim_configure2: '0x64de8ed3' # perf
nsim_configure2_reply: '0xe8d4e804' # perf
nsim_output_feature_enable_disable: '0x3865946c' # perf
nsim_output_feature_enable_disable_reply: '0xe8d4e804' # perf
# 4x^ 1280B-1c-eth-ip4udpquicscale10cl1s-vppecho-bps
# ^ 1280BAND1cANDeth-ip4udpquicscale10cl1s-vppecho
+
+ # vnet/policer/policer.api
policer_add_del: '0x2b31dd38' # dev
policer_add_del_reply: '0xa177cef2' # dev
+
+ # vnet/classify/classify.api
policer_classify_set_interface: '0xde7ad708' # dev
policer_classify_set_interface_reply: '0xe8d4e804' # dev
+
+ # plugins/rdma/rdma.api
rdma_create_v3: '0xc6287ea8' # perf
rdma_create_v3_reply: '0x5383d31f' # perf
# 2x^ Any test with drv_rdma. Currently only available on 2n-clx.
# - Not testable by devicetest (until we have environment with right NICs).
+
+ # vlibmemory/vlib.api
show_threads: '0x51077d14' # dev
show_threads_reply: '0xefd78e83' # dev
+
+ # vpp/api/vpe.api
show_version: '0x51077d14' # dev setup
show_version_reply: '0xc919bde1' # dev setup
+
+ # vnet/srv6/sr.api
sr_localsid_add_del: '0x5a36c324' # dev
sr_localsid_add_del_reply: '0xe8d4e804' # dev
sr_localsids_details: '0x2e9221b9' # dev teardown
sr_localsids_dump: '0x51077d14' # dev teardown
- sr_policies_details: '0xdb6ff2a1' # dev teardown
- sr_policies_dump: '0x51077d14' # dev teardown
+ sr_policies_v2_details: '0x96dcb699' # dev teardown
+ sr_policies_v2_dump: '0x51077d14' # dev teardown
sr_policy_add: '0x44ac92e8' # dev
sr_policy_add_reply: '0xe8d4e804' # dev
sr_set_encap_source: '0xd3bad5e1' # dev
@@ -252,26 +331,39 @@
sr_steering_add_del_reply: '0xe8d4e804' # dev
sr_steering_pol_details: '0xd41258c9' # dev teardown
sr_steering_pol_dump: '0x51077d14' # dev teardown
+
+ # vnet/bonding/bond.api
sw_bond_interface_details: '0x9428a69c' # perf
sw_bond_interface_dump: '0xf9e6675e' # perf
# ^^ see bond_*
+
+ # vnet/interface.api
sw_interface_add_del_address: '0x5463d73b' # dev
sw_interface_add_del_address_reply: '0xe8d4e804' # dev
sw_interface_details: '0x6c221fc7' # dev
sw_interface_dump: '0xaa610c27' # dev
# sw_interface_get_table / reply # honeycomb
+
+ # vnet/ip6-nd/ip6_nd.api
sw_interface_ip6nd_ra_config: '0x3eb00b1c' # dev
sw_interface_ip6nd_ra_config_reply: '0xe8d4e804' # dev
+
+ # vnet/interface.api
sw_interface_rx_placement_details: '0x9e44a7ce' # dev
sw_interface_rx_placement_dump: '0xf9e6675e' # dev
sw_interface_set_flags: '0xf5aec1b8' # dev
sw_interface_set_flags_reply: '0xe8d4e804' # dev
+
# sw_interface_set_geneve_bypass can be called
# by enable_interface_geneve_bypass function
+
+ # vnet/l2/l2.api
sw_interface_set_l2_bridge: '0xd0678b13' # dev
sw_interface_set_l2_bridge_reply: '0xe8d4e804' # dev
sw_interface_set_l2_xconnect: '0x4fa28a85' # dev
sw_interface_set_l2_xconnect_reply: '0xe8d4e804' # dev
+
+ # vnet/interface.api
sw_interface_set_mac_address: '0xc536e7eb' # dev
sw_interface_set_mac_address_reply: '0xe8d4e804' # dev
sw_interface_set_rx_placement: '0xdb65f3c9' # dev
@@ -280,27 +372,42 @@
sw_interface_set_table_reply: '0xe8d4e804' # dev
sw_interface_set_unnumbered: '0x154a6439' # dev
sw_interface_set_unnumbered_reply: '0xe8d4e804' # dev
+
+ # plugins/vxlan/vxlan.api
sw_interface_set_vxlan_bypass: '0x65247409' # dev
sw_interface_set_vxlan_bypass_reply: '0xe8d4e804' # dev
+
+ # vnet/devices/tap/tapv2.api
sw_interface_tap_v2_details: '0x1e2b2a47' # dev
sw_interface_tap_v2_dump: '0xf9e6675e' # dev
+
+ # plugins/vhost/vhost_user.api
sw_interface_vhost_user_details: '0x0cee1e53' # dev teardown
sw_interface_vhost_user_dump: '0xf9e6675e' # dev deardown
+
+ # vnet/bonding/bond.api
sw_member_interface_details: '0x3c4a0e23' # perf
sw_member_interface_dump: '0xf9e6675e' # perf
# ^^ see bond_*
+
+ # vnet/devices/tap/tapv2.api
tap_create_v3: '0x3f3fd1df' # dev
tap_create_v3_reply: '0x5383d31f' # dev
+
+ # plugins/vxlan/vxlan.api
vxlan_add_del_tunnel_v3: '0x0072b037' # dev
vxlan_add_del_tunnel_v3_reply: '0x5383d31f' # dev
# vxlan_gpe_tunnel_dump / details # honeycomb
# vxlan_tunnel_dump /details # unused L2 keyword: Get VXLAN dump
+
+ # plugins/wireguard/wireguard.api
wireguard_interface_create: '0xa530137e'
wireguard_interface_create_reply: '0x5383d31f'
wireguard_peer_add: '0x9b8aad61'
wireguard_peer_add_reply: '0x084a0cd3'
wg_set_async_mode: '0xa6465f7c'
wg_set_async_mode_reply: '0xe8d4e804'
+
# Please keep alphabetic order.
# Use bash command "env LC_COLLATE=C sort -u" if not clear.
diff --git a/resources/libraries/python/Memif.py b/resources/libraries/python/Memif.py
index d38f5000a7..4e0bb5fa4f 100644
--- a/resources/libraries/python/Memif.py
+++ b/resources/libraries/python/Memif.py
@@ -1,4 +1,4 @@
-# Copyright (c) 2021 Cisco and/or its affiliates.
+# Copyright (c) 2023 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
@@ -74,7 +74,7 @@ class Memif:
includes only retval.
:rtype: dict
"""
- cmd = u"memif_socket_filename_add_del"
+ cmd = u"memif_socket_filename_add_del_v2"
err_msg = f"Failed to create memif socket on host {node[u'host']}"
args = dict(
is_add=is_add,
@@ -85,7 +85,7 @@ class Memif:
return papi_exec.add(cmd, **args).get_reply(err_msg)
@staticmethod
- def _memif_create(node, mid, sid, rxq=1, txq=1, role=1):
+ def _memif_create(node, mid, sid, rxq=1, txq=1, role=1, use_dma=False):
"""Create Memif interface on the given node, return its sw_if_index.
:param node: Given node to create Memif interface on.
@@ -94,16 +94,18 @@ class Memif:
:param rxq: Number of RX queues; 0 means do not set.
:param txq: Number of TX queues; 0 means do not set.
:param role: Memif interface role [master=0|slave=1]. Default is slave.
+ :param use_dma: Use DMA acceleration. Requires hardware support.
:type node: dict
:type mid: str
:type sid: str
:type rxq: int
:type txq: int
:type role: int
+ :type use_dma: bool
:returns: sw_if_index
:rtype: int
"""
- cmd = u"memif_create"
+ cmd = u"memif_create_v2"
err_msg = f"Failed to create memif interface on host {node[u'host']}"
args = dict(
role=role,
@@ -111,7 +113,8 @@ class Memif:
tx_queues=int(txq),
socket_id=int(sid),
id=int(mid),
- secret=u""
+ secret=u"",
+ use_dma=use_dma,
)
with PapiSocketExecutor(node) as papi_exec:
@@ -119,7 +122,8 @@ class Memif:
@staticmethod
def create_memif_interface(
- node, filename, mid, sid, rxq=1, txq=1, role=u"SLAVE"):
+ node, filename, mid, sid, rxq=1, txq=1, role=u"SLAVE", use_dma=False
+ ):
"""Create Memif interface on the given node.
:param node: Given node to create Memif interface on.
@@ -129,6 +133,7 @@ class Memif:
:param rxq: Number of RX queues; 0 means do not set.
:param txq: Number of TX queues; 0 means do not set.
:param role: Memif interface role [master=0|slave=1]. Default is master.
+ :param use_dma: Use DMA acceleration. Requires hardware support.
:type node: dict
:type filename: str
:type mid: str
@@ -136,6 +141,7 @@ class Memif:
:type rxq: int
:type txq: int
:type role: str
+ :type use_dma: bool
:returns: SW interface index.
:rtype: int
:raises ValueError: If command 'create memif' fails.
@@ -147,7 +153,7 @@ class Memif:
# Create memif
sw_if_index = Memif._memif_create(
- node, mid, sid, rxq=rxq, txq=txq, role=role
+ node, mid, sid, rxq=rxq, txq=txq, role=role, use_dma=use_dma
)
# Update Topology
diff --git a/resources/libraries/python/SRv6.py b/resources/libraries/python/SRv6.py
index eca22a2b17..d16c3529c3 100644
--- a/resources/libraries/python/SRv6.py
+++ b/resources/libraries/python/SRv6.py
@@ -1,4 +1,4 @@
-# Copyright (c) 2021 Cisco and/or its affiliates.
+# Copyright (c) 2023 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
@@ -222,6 +222,8 @@ class SRv6:
:type sid_list: list
:type mode: str
"""
+ # TODO: Convert to use sr_policy_add_v2.
+ # The conversion is not straightforward so it was not done when bumping.
cmd = u"sr_policy_add"
args = dict(
bsid_addr=IPv6Address(bsid).packed,
@@ -243,7 +245,7 @@ class SRv6:
:param node: Given node to show SRv6 policies on.
:type node: dict
"""
- cmd = u"sr_policies_dump"
+ cmd = u"sr_policies_v2_dump"
PapiSocketExecutor.dump_and_log(node, (cmd,))
@staticmethod