]> www.infradead.org Git - users/dwmw2/linux.git/commit
net: dsa: mv88e6xxx: Limit chip-wide frame size config to CPU ports
authorMartin Willi <martin@strongswan.org>
Wed, 17 Jul 2024 09:08:19 +0000 (11:08 +0200)
committerPaolo Abeni <pabeni@redhat.com>
Thu, 18 Jul 2024 11:09:12 +0000 (13:09 +0200)
commit66b6095c264e1b4e0a441c6329861806504e06c6
tree0fd46707ba8dcff02b97fc2819cd53b10fcf5bf7
parent4e076ff6ad5302c015617da30d877b4cdcbdf613
net: dsa: mv88e6xxx: Limit chip-wide frame size config to CPU ports

Marvell chips not supporting per-port jumbo frame size configurations use
a chip-wide frame size configuration. In the commit referenced with the
Fixes tag, the setting is applied just for the last port changing its MTU.

While configuring CPU ports accounts for tagger overhead, user ports do
not. When setting the MTU for a user port, the chip-wide setting is
reduced to not include the tagger overhead, resulting in an potentially
insufficient maximum frame size for the CPU port. Specifically, sending
full-size frames from the CPU port on a MV88E6097 having a user port MTU
of 1500 bytes results in dropped frames.

As, by design, the CPU port MTU is adjusted for any user port change,
apply the chip-wide setting only for CPU ports.

Fixes: 1baf0fac10fb ("net: dsa: mv88e6xxx: Use chip-wide max frame size for MTU")
Suggested-by: Vladimir Oltean <olteanv@gmail.com>
Signed-off-by: Martin Willi <martin@strongswan.org>
Reviewed-by: Vladimir Oltean <olteanv@gmail.com>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
drivers/net/dsa/mv88e6xxx/chip.c