commit 662dc80a5e86 breaks rmnet over usb

From: Koen Vandeputte

Date: Mon Feb 23 2026 - 07:09:57 EST


Hi Laurent,

I'm testing the latest openwrt state and found an issue probably
caused by your usb mtu limit patch :-)

I'm talking about this one:
662dc80a5e86 ("usbnet: limit max_mtu based on device's hard_mtu")

https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.74&id=662dc80a5e86b35bbf339e0b87b7cc3f07c09de1


When using wwan0 iface normally, this makes sense, but the problem is
when using QMI modems combined with the rmnet driver and aggregated
frames.

- The modem is configured to frame sizes of 16383 or 32767 using QMI
- wwan0 (using qmi_wwan) is configured to match this frame size by
setting it's MTU to the same value
- Frames of this size are sent over to qmi_wwan driver (containing
multiple data packets)
- Frames are then forwarded to the rmnet driver
- Frames get de-aggregated here and sent to the network stack for processing.

The reason here is to reduce USB transfers heavily.


As you see, it's perfectly possible here to use very large MTU sizes
as the aggregation feature by rmnet relies on this.
Also the modem can be perfectly configured to send very large aggregated frames.

After your patch, wwan0 is limited to 1500 bytes it seems, effectively
breaking aggregation.

On my tests, download speeds are reduced from >300Mbps to ~.8Mbps

I also made a build reverting this patch and all works well again.


Is there any other solution to fix this?
I guess it should be reverted otherwise :-)

Thanks a lot!

Koen