From: Mohammed Hawari Date: Fri, 13 May 2022 07:45:12 +0000 (+0200) Subject: dpdk: fix overflow in mtu arithmetic X-Git-Tag: v22.10-rc0~29 X-Git-Url: https://gerrit.fd.io/r/gitweb?a=commitdiff_plain;h=c0a08cadee9161554246f707eaf24f782086914d;p=vpp.git dpdk: fix overflow in mtu arithmetic When the driver's max_rx_pktlen is >= 65536, max_supported_frame_size overflows and queue creation fails. Change-Id: If78707cb698adf8619ec44a852dd05d570917577 Signed-off-by: Mohammed Hawari Type: fix --- diff --git a/src/plugins/dpdk/device/common.c b/src/plugins/dpdk/device/common.c index a37659508dc..b8c6eddd34b 100644 --- a/src/plugins/dpdk/device/common.c +++ b/src/plugins/dpdk/device/common.c @@ -65,7 +65,7 @@ dpdk_device_setup (dpdk_device_t * xd) struct rte_eth_dev_info dev_info; struct rte_eth_conf conf = {}; u64 rxo, txo; - u16 max_frame_size; + u32 max_frame_size; int rv; int j; diff --git a/src/plugins/dpdk/device/dpdk.h b/src/plugins/dpdk/device/dpdk.h index 008c82df7b0..02cf6812d43 100644 --- a/src/plugins/dpdk/device/dpdk.h +++ b/src/plugins/dpdk/device/dpdk.h @@ -202,7 +202,7 @@ typedef struct u8 *default_mac_address; /* maximum supported max frame size */ - u16 max_supported_frame_size; + u32 max_supported_frame_size; /* due to lack of API to get ethernet max_frame_size we store information * deducted from device info */