From b225b0a2af66b0a3a007d50877638f7489acbaf3 Mon Sep 17 00:00:00 2001 From: Nathan Skrzypczak Date: Tue, 26 Oct 2021 16:11:38 +0200 Subject: devices: default mode eth in the api Type: fix https://gerrit.fd.io/r/c/vpp/+/34027 added support for l3 mode, but as the eth_mode constant was set to 1 we did default to l3 mode in the api. This reverts to the original logic. Change-Id: If8b90b300d3868de5233dfa1f33ec975853cba11 Signed-off-by: Nathan Skrzypczak --- src/vnet/devices/af_packet/af_packet.c | 4 ++-- src/vnet/devices/af_packet/af_packet_api.c | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) (limited to 'src/vnet/devices/af_packet') diff --git a/src/vnet/devices/af_packet/af_packet.c b/src/vnet/devices/af_packet/af_packet.c index 69e3c871412..0508d3ec963 100644 --- a/src/vnet/devices/af_packet/af_packet.c +++ b/src/vnet/devices/af_packet/af_packet.c @@ -381,7 +381,7 @@ af_packet_create_if (af_packet_create_if_arg_t *arg) if (tm->n_vlib_mains > 1) clib_spinlock_init (&apif->lockp); - if (apif->mode == AF_PACKET_IF_MODE_ETHERNET) + if (apif->mode != AF_PACKET_IF_MODE_IP) { /*use configured or generate random MAC address */ if (arg->hw_addr) @@ -518,7 +518,7 @@ af_packet_delete_if (u8 *host_if_name) mhash_unset (&apm->if_index_by_host_if_name, host_if_name, &if_index); - if (apif->mode == AF_PACKET_IF_MODE_ETHERNET) + if (apif->mode != AF_PACKET_IF_MODE_IP) ethernet_delete_interface (vnm, apif->hw_if_index); else vnet_delete_hw_interface (vnm, apif->hw_if_index); diff --git a/src/vnet/devices/af_packet/af_packet_api.c b/src/vnet/devices/af_packet/af_packet_api.c index 80a2d9222c6..3d57977eb49 100644 --- a/src/vnet/devices/af_packet/af_packet_api.c +++ b/src/vnet/devices/af_packet/af_packet_api.c @@ -46,6 +46,7 @@ vl_api_af_packet_create_t_handler (vl_api_af_packet_create_t * mp) vec_add1 (arg->host_if_name, 0); arg->hw_addr = mp->use_random_hw_addr ? 0 : mp->hw_addr; + arg->mode = AF_PACKET_IF_MODE_ETHERNET; rv = af_packet_create_if (arg); vec_free (arg->host_if_name); @@ -72,6 +73,7 @@ vl_api_af_packet_create_v2_t_handler (vl_api_af_packet_create_v2_t *mp) arg->rx_frames_per_block = clib_net_to_host_u32 (mp->rx_frames_per_block); arg->tx_frames_per_block = clib_net_to_host_u32 (mp->tx_frames_per_block); arg->hw_addr = mp->use_random_hw_addr ? 0 : mp->hw_addr; + arg->mode = AF_PACKET_IF_MODE_ETHERNET; if (mp->num_rx_queues > 1) { -- cgit 1.2.3-korg