> -----Original Message-----
> From: Erwan Velu <erwanalia...@gmail.com> 
> Sent: Friday, April 19, 2024 8:10 PM
> To: Pucha, HimasekharX Reddy <himasekharx.reddy.pu...@intel.com>
> Subject: Re: [Intel-wired-lan] [PATCH v4 iwl-net] i40e: Prevent setting MTU 
> if greater than MFS
>
> Hum that's pretty unexpected.
>Can you print "new_mtu"  and "max_mtu" in i40e_change_mtu() ?

Hi velu,

Please find below logs


[root@ ~]# ifconfig ens803f0np0
ens803f0np0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        ether 00:00:00:00:01:00  txqueuelen 1000  (Ethernet)
        RX packets 6  bytes 1908 (1.8 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4  bytes 1368 (1.3 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

[root@ ~]# ifconfig ens803f0np0 mtu 9700
[root@ ~]# ifconfig ens803f0np0
ens803f0np0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 9700
        ether 00:00:00:00:01:00  txqueuelen 1000  (Ethernet)
        RX packets 10  bytes 3180 (3.1 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6  bytes 2052 (2.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

[root@~]# ifconfig ens803f0np0 mtu 1000
[root@ ~]# ifconfig ens803f0np0
ens803f0np0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1000
        ether 00:00:00:00:01:00  txqueuelen 1000  (Ethernet)
        RX packets 10  bytes 3180 (3.1 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6  bytes 2052 (2.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Dmesg:

[  +0.013744] i40e 0000:86:00.0: fw 9.140.76856 api 1.15 nvm 9.40 0xefd0ed12 
1.3534.0 [8086:158b] [8086:0002]
[  +0.102046] i40e 0000:86:00.0: MAC address: 00:00:00:00:01:00
[  +0.003999] i40e 0000:86:00.0: FW LLDP is enabled
[  +0.006038] i40e 0000:86:00.0 eth0: NIC Link is Up, 25 Gbps Full Duplex, 
Requested FEC: CL108 RS-FEC, Negotiated FEC: CL108 RS-FEC, Autoneg: True, Flow 
Control: None
[  +0.000448] i40e 0000:86:00.0: PCI-Express: Speed 8.0GT/s Width x8
[  +0.000385] i40e 0000:86:00.0: MFS for port 0 (5888) has been set below the 
default (9728)
[  +0.000129] i40e 0000:86:00.0: Features: PF-id[0] VFs: 64 VSIs: 66 QP: 96 RSS 
FD_ATR FD_SB NTUPLE DCB VxLAN Geneve PTP VEPA
[  +0.004540] i40e 0000:86:00.0 ens803f0np0: renamed from eth0
[  +0.009012] i40e 0000:86:00.1: fw 9.140.76856 api 1.15 nvm 9.40 0xefd0ed12 
1.3534.0 [8086:158b] [8086:0002]
[  +0.236975] i40e 0000:86:00.1: MAC address: 00:00:00:00:01:01
[  +0.000252] i40e 0000:86:00.1: FW LLDP is enabled
[  +0.006078] i40e 0000:86:00.1 eth0: NIC Link is Up, 25 Gbps Full Duplex, 
Requested FEC: CL108 RS-FEC, Negotiated FEC: None, Autoneg: True, Flow Control: 
None
[  +0.000437] i40e 0000:86:00.1: PCI-Express: Speed 8.0GT/s Width x8
[  +0.000386] i40e 0000:86:00.1: MFS for port 1 (5888) has been set below the 
default (9728)
[  +0.000129] i40e 0000:86:00.1: Features: PF-id[1] VFs: 64 VSIs: 66 QP: 96 RSS 
FD_ATR FD_SB NTUPLE DCB VxLAN Geneve PTP VEPA
[  +0.004697] i40e 0000:86:00.1 ens803f1np1: renamed from eth0

[Apr22 10:06] i40e 0000:86:00.0 ens803f0np0: New MTU is 9700, Max MTU is 9702
[ +21.608224] i40e 0000:86:00.0 ens803f0np0: New MTU is 1000, Max MTU is 9702

>Le ven. 19 avr. 2024 à 16:26, Pucha, HimasekharX Reddy 
><himasekharx.reddy.pu...@intel.com> a écrit :
> >
> > >-----Original Message-----
> > > From: Intel-wired-lan <intel-wired-lan-boun...@osuosl.org> On Behalf 
> > >Of Erwan Velu
> > > Sent: Wednesday, March 13, 2024 2:37 PM
> > > Cc: Velu, Erwan <e.v...@criteo.com>; linux-ker...@vger.kernel.org; 
> > >Eric Dumazet <eduma...@google.com>; net...@vger.kernel.org; Nguyen, 
> > >Anthony L <anthony.l.ngu...@intel.com>; 
> > >intel-wired-...@lists.osuosl.org; Jakub Kicinski <k...@kernel.org>; 
> > >Paolo Abeni <pab...@redhat.com>; David S. Miller 
> > ><da...@davemloft.net>
> > > Subject: [Intel-wired-lan] [PATCH v4 iwl-net] i40e: Prevent setting 
> > >MTU if greater than MFS
> > >
> > > Commit 6871a7de705 ("[intelxl] Use admin queue to set port MAC address 
> > > and maximum frame size") from iPXE project set the MFS to 0x600 = 1536.
> > > See https://github.com/ipxe/ipxe/commit/6871a7de705
> > >
> > > At boot time the i40e driver complains about it with the following 
> > > message but continues.
> > >
> > >       MFS for port 1 has been set below the default: 600
> > >
> > > If the MTU size is increased, the driver accepts it but large packets 
> > > will not be processed by the firmware generating tx_errors. The issue is 
> > > pretty silent for users. i.e doing TCP in such context will generates 
> > > lots of retransmissions until the proper > window size (below 1500) will 
> > > be used.
> > >
> > > To fix this case, it would have been ideal to increase the MFS, via 
> > > i40e_aqc_opc_set_mac_config, incoming patch will take care of it.
> > >
> > > At least, commit prevents setting up an MTU greater than the current MFS.
> > > It will avoid being in the position of having an MTU set to 9000 on the 
> > > netdev with a firmware refusing packets larger than 1536.
> > >
> > > A typical trace looks like:
> > > [  377.548696] i40e 0000:5d:00.0 eno5: Error changing mtu to 9000, Max is 
> > > 1500. MFS is too small.
> > >
> > > Signed-off-by: Erwan Velu <e.v...@criteo.com>
> > > ---
> > >  drivers/net/ethernet/intel/i40e/i40e_main.c | 10 +++++++++-
> > >  1 file changed, 9 insertions(+), 1 deletion(-)
> > >
> >
> >
> > With patch when we set the MFS to 1700 (5888) in the NVM (as seen below) 
> > and then set the MTU on PF0 to 9000 and it set it to 9000 with no errors 
> > and no messages in dmesg.
> >
> > [root@localhost user]# ip link set mtu 9000 dev enp131s0f0np0 
> > [root@localhost user]# ip link show dev enp131s0f0np0
> > 9: enp131s0f0np0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc mq state 
> > UP mode DEFAULT group default qlen 1000
> >     link/ether 00:00:00:00:01:00 brd ff:ff:ff:ff:ff:ff
> >
> > dmesg when loading the driver:
> > [257.035823] 140e 0000:83:00.1: MFS for port 1 (5888) has been set 
> > below the default (9728)
>

Reply via email to