[dpdk-dev] [PATCH v1 2/6] net/i40e: set min and max MTU for i40e devices

Ferruh Yigit ferruh.yigit at intel.com
Tue Mar 19 17:18:09 CET 2019


On 2/27/2019 9:45 PM, Ian Stokes wrote:
> This commit sets the min and max supported MTU values for i40e devices
> via the i40e_dev_info_get() function. Min MTU supported is set to
> ETHER_MIN_MTU and max mtu is calculated as the max packet length
> supported minus the transport overhead.
> 
> Signed-off-by: Ian Stokes <ian.stokes at intel.com>
> ---
>  drivers/net/i40e/i40e_ethdev.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c
> index dca61f03a..caab1624f 100644
> --- a/drivers/net/i40e/i40e_ethdev.c
> +++ b/drivers/net/i40e/i40e_ethdev.c
> @@ -3499,6 +3499,8 @@ i40e_dev_info_get(struct rte_eth_dev *dev, struct rte_eth_dev_info *dev_info)
>  	dev_info->max_rx_pktlen = I40E_FRAME_SIZE_MAX;
>  	dev_info->max_mac_addrs = vsi->max_macaddrs;
>  	dev_info->max_vfs = pci_dev->max_vfs;
> +	dev_info->max_mtu = dev_info->max_rx_pktlen - I40E_ETH_OVERHEAD;

'I40E_ETH_OVERHEAD' [1] is the max overhead, when VLAN and QINQ is not
configured, we are wasting 8 bytes, should we try to be more fine grained when
setting the max_mtu? Does it worth the complexity?


[1]
(ETHER_HDR_LEN + ETHER_CRC_LEN + I40E_VLAN_TAG_SIZE * 2)

> +	dev_info->min_mtu = ETHER_MIN_MTU;
>  	dev_info->rx_queue_offload_capa = 0;
>  	dev_info->rx_offload_capa =
>  		DEV_RX_OFFLOAD_VLAN_STRIP |
> 



More information about the dev mailing list