Re: if_vlan allow to set incorrect mtu

From: Zhenlei Huang <zlei.huang_at_gmail.com>
Date: Mon, 08 Nov 2021 07:34:47 UTC

> On Nov 7, 2021, at 3:51 PM, Rozhuk Ivan <rozhuk.im@gmail.com> wrote:
> 
> Hi!
> 
> 
> Why if_vlan allow to set same MTU size or bigger as on parrent nic?
> 
> 
> Setup:
> - workstation with MTU 9000 and IPv4 on h/w nic
> - server with MTU 9000 on h/w nic and IPv4 on vlan nic with MTU 9000 (set by defauil on iface creation)
> 
> This setup have issue:
> - big packets from server->wks - OK
> - big packets from wks->server - FAIL.
> 
> Server init sequence:
> 1. Create vlans
> 2. Set MTU lower than default on parent nic
> 
> Result: vlan have bigger or same MTU as parrent nic, but parrent nic reports IFCAP_VLAN_MTU.
> Probably this is if_em driver issue or iflib.
> 
> 
> 
> This is rc.conf, vlan77 - where I got MTU 9000 and fail to receive packets:
> =====================================================================================
> vlans_igb0="vlan77 vlan86 vlan87"
> create_args_vlan87="vlan 87"
> create_args_vlan86="vlan 86"
> create_args_vlan77="vlan 77"
> ifconfig_vlan87="inet 15.44.77.2 netmask 255.255.252.0 mtu 1500 down up"
> ifconfig_vlan87_alias0="link 00:aa:fa:dd:44:55"
> ifconfig_vlan86="DHCP mtu 1500"
> ifconfig_vlan86_alias0="link 00:ff:fa:dd:44:55"
> ifconfig_vlan77="inet 192.168.0.254 netmask 255.255.255.0"
> ifconfig_vlan77_alias0="link 00:0f:43:48:67:fe"
> ifconfig_vlan77_ipv6="inet6 2001:470:2345:555::1/64 prefixlen 64 auto_linklocal"
> ifconfig_igb0="-lro -tso -vlanhwtso mtu 9000 down up"
> =====================================================================================
> 
> 
> 

Can you please disable all vlan hardware offloading features and repeat the test again?

ifconfig igb0 -vlanmtu -vlanhwtag -vlanhwfilter -vlanhwtso -vlanhwcsum