Thread (9 messages) flat view 9 messages, 4 authors, 2021-05-23

Re: mvpp2: incorrect max mtu?

From: "Russell King (Oracle)" <linux@armlinux.org.uk>
Date: 2021-05-14 17:21:42

On Fri, May 14, 2021 at 04:35:12PM +0200, Andrew Lunn wrote:
On Fri, May 14, 2021 at 02:00:18PM +0100, Russell King (Oracle) wrote:
quoted
Hi all,

While testing out the 10G speeds on my Macchiatobin platforms, the first
thing I notice is that they only manage about 1Gbps at a MTU of 1500.
As expected, this increases when the MTU is increased - a MTU of 9000
works, and gives a useful performance boost.

Then comes the obvious question - what is the maximum MTU.

#define MVPP2_BM_JUMBO_FRAME_SIZE       10432   /* frame size 9856 */

So, one may assume that 9856 is the maximum. However:

# ip li set dev eth0 mtu 9888
# ip li set dev eth0 mtu 9889
Error: mtu greater than device maximum.
Hi Russell

It all seems inconsistent:

https://elixir.bootlin.com/linux/latest/source/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c#L6879

	/* MTU range: 68 - 9704 */
	dev->min_mtu = ETH_MIN_MTU;
	/* 9704 == 9728 - 20 and rounding to 8 */
	dev->max_mtu = MVPP2_BM_JUMBO_PKT_SIZE;

Maybe this comment is correct, the code is now wrong, and the MAX MTU
should be 9704?
Oh, there's more values given elsewhere that disagree, see my reply to
Marcin. I would not be surprised if this was all "confused" about
what the proper value is. Certainly the comment you mention above
disagrees with what is in mvpp2.h

-- 
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTP is here! 40Mbps down 10Mbps up. Decent connectivity at last!
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help