Subject: Re: RMNET QMAP data aggregation with size greater than 16384

From: [email-masked]
Date: Thu, 05 Aug 2021 13:10:07 -0600

On 2021-07-31 16:45, Aleksander Morgado wrote:
> Hey Subash,
> 
> I'm playing with the whole QMAP data aggregation setup with a USB
> connected Fibocom FM150-AE module (SDX55).
> See https://gitlab.freedesktop.org/mobile-broadband/libqmi/-/issues/71
> for some details on how I tested all this.
> 
> This module reports a "Downlink Data Aggregation Max Size" of 32768
> via the "QMI WDA Get Data Format" request/response, and therefore I
> configured the MTU of the master wwan0 interface with that same value
> (while in 802.3 mode, before switching to raw-ip and enabling
> qmap-pass-through in qmi_wwan).
> 
> When attempting to create a new link using netlink, the operation
> fails with -EINVAL, and following the code path in the kernel driver,
> it looks like there is a check in rmnet_vnd_change_mtu() where the
> master interface MTU is checked against the RMNET_MAX_PACKET_SIZE
> value, defined as 16384.
> 
> If I setup the master interface with MTU 16384 before creating the
> links with netlink, there's no error reported anywhere. The FM150
> module crashes as soon as I connect it with data aggregation enabled,
> but that's a different story...
> 
> Is this limitation imposed by the RMNET_MAX_PACKET_SIZE value still a
> valid one in this case? Should changing the max packet size to 32768
> be a reasonable approach? Am I doing something wrong? :)
> 
> This previous discussion for the qmi_wwan add_mux/del_mux case is
> relevant:
> https://patchwork.ozlabs.org/project/netdev/patch/[email-masked]/..
> The suggested patch was not included yet in the qmi_wwan driver and
> therefore the user still needs to manually configure the MTU of the
> master interface before setting up all the links, but at least there
> seems to be no maximum hardcoded limit.
> 
> Cheers!

Hi Aleksander

The downlink data aggregation size shouldn't affect the MTU.
MTU applies for uplink only and there is no correlation with the 
downlink path.
Ideally, you should be able to use standard 1500 bytes (+ additional 
size for MAP header)
for the master device. Is there some specific network which is using
greater than 1500 for the IP packet itself in uplink.

--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora 
Forum,
a Linux Foundation Collaborative Project