Message ID | 20230606123119.57499-4-manivannan.sadhasivam@linaro.org (mailing list archive) |
---|---|
State | Superseded |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | Add MHI Endpoint network driver | expand |
Context | Check | Description |
---|---|---|
netdev/series_format | success | Posting correctly formatted |
netdev/tree_selection | success | Guessed tree name to be net-next, async |
netdev/fixes_present | success | Fixes tag not required for -next series |
netdev/header_inline | success | No static functions without inline keyword in header files |
netdev/build_32bit | success | Errors and warnings before: 8 this patch: 8 |
netdev/cc_maintainers | success | CCed 8 of 8 maintainers |
netdev/build_clang | success | Errors and warnings before: 8 this patch: 8 |
netdev/verify_signedoff | success | Signed-off-by tag matches author and committer |
netdev/deprecated_api | success | None detected |
netdev/check_selftest | success | No net selftest shell script |
netdev/verify_fixes | success | No Fixes tag |
netdev/build_allmodconfig_warn | success | Errors and warnings before: 8 this patch: 8 |
netdev/checkpatch | success | total: 0 errors, 0 warnings, 0 checks, 8 lines checked |
netdev/kdoc | success | Errors and warnings before: 0 this patch: 0 |
netdev/source_inline | success | Was 0 now: 0 |
On 6/6/2023 6:31 AM, Manivannan Sadhasivam wrote: > Most of the Qualcomm endpoint devices are supporting 32K MTU for the > UL (Uplink) and DL (Downlink) channels. So let's use the same value > in the MHI NET driver also. This gives almost 2x increase in the throughput > for the UL channel. > > Below is the comparision: > > iperf on the UL channel with 16K MTU: > > [ ID] Interval Transfer Bandwidth > [ 3] 0.0-10.0 sec 353 MBytes 296 Mbits/sec > > iperf on the UL channel with 32K MTU: > > [ ID] Interval Transfer Bandwidth > [ 3] 0.0-10.0 sec 695 MBytes 583 Mbits/sec > > Cc: Loic Poulain <loic.poulain@linaro.org> > Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> > --- > drivers/net/mhi_net.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/net/mhi_net.c b/drivers/net/mhi_net.c > index 3d322ac4f6a5..eddc2c701da4 100644 > --- a/drivers/net/mhi_net.c > +++ b/drivers/net/mhi_net.c > @@ -14,7 +14,7 @@ > > #define MHI_NET_MIN_MTU ETH_MIN_MTU > #define MHI_NET_MAX_MTU 0xffff > -#define MHI_NET_DEFAULT_MTU 0x4000 > +#define MHI_NET_DEFAULT_MTU 0x8000 Why not SZ_32K?
On Tue, Jun 06, 2023 at 07:50:23AM -0600, Jeffrey Hugo wrote: > On 6/6/2023 6:31 AM, Manivannan Sadhasivam wrote: > > Most of the Qualcomm endpoint devices are supporting 32K MTU for the > > UL (Uplink) and DL (Downlink) channels. So let's use the same value > > in the MHI NET driver also. This gives almost 2x increase in the throughput > > for the UL channel. > > > > Below is the comparision: > > > > iperf on the UL channel with 16K MTU: > > > > [ ID] Interval Transfer Bandwidth > > [ 3] 0.0-10.0 sec 353 MBytes 296 Mbits/sec > > > > iperf on the UL channel with 32K MTU: > > > > [ ID] Interval Transfer Bandwidth > > [ 3] 0.0-10.0 sec 695 MBytes 583 Mbits/sec > > > > Cc: Loic Poulain <loic.poulain@linaro.org> > > Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> > > --- > > drivers/net/mhi_net.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/drivers/net/mhi_net.c b/drivers/net/mhi_net.c > > index 3d322ac4f6a5..eddc2c701da4 100644 > > --- a/drivers/net/mhi_net.c > > +++ b/drivers/net/mhi_net.c > > @@ -14,7 +14,7 @@ > > #define MHI_NET_MIN_MTU ETH_MIN_MTU > > #define MHI_NET_MAX_MTU 0xffff > > -#define MHI_NET_DEFAULT_MTU 0x4000 > > +#define MHI_NET_DEFAULT_MTU 0x8000 > > Why not SZ_32K? Makes sense. Will change it in next iteration. - Mani
On Tue, Jun 06, 2023 at 06:01:19PM +0530, Manivannan Sadhasivam wrote: > Most of the Qualcomm endpoint devices are supporting 32K MTU for the > UL (Uplink) and DL (Downlink) channels. So let's use the same value > in the MHI NET driver also. This gives almost 2x increase in the throughput > for the UL channel. > > Below is the comparision: Hi Manivannan, as it looks like there will be a v2: comparision -> comparison ...
On Wed, Jun 07, 2023 at 12:28:09PM +0530, Manivannan Sadhasivam wrote: > On Tue, Jun 06, 2023 at 07:50:23AM -0600, Jeffrey Hugo wrote: > > On 6/6/2023 6:31 AM, Manivannan Sadhasivam wrote: > > > Most of the Qualcomm endpoint devices are supporting 32K MTU for the > > > UL (Uplink) and DL (Downlink) channels. So let's use the same value > > > in the MHI NET driver also. This gives almost 2x increase in the throughput > > > for the UL channel. You say here 'Most'. What happens on those which do not support 32K? Do the packets get dropped and it turns into a black hole? Andrew
On Wed, Jun 07, 2023 at 02:25:50PM +0200, Andrew Lunn wrote: > On Wed, Jun 07, 2023 at 12:28:09PM +0530, Manivannan Sadhasivam wrote: > > On Tue, Jun 06, 2023 at 07:50:23AM -0600, Jeffrey Hugo wrote: > > > On 6/6/2023 6:31 AM, Manivannan Sadhasivam wrote: > > > > Most of the Qualcomm endpoint devices are supporting 32K MTU for the > > > > UL (Uplink) and DL (Downlink) channels. So let's use the same value > > > > in the MHI NET driver also. This gives almost 2x increase in the throughput > > > > for the UL channel. > > You say here 'Most'. What happens on those which do not support 32K? > Do the packets get dropped and it turns into a black hole? > Yeah, and the host has to retransmit. But I checked again with Qcom on the MTU size and got a different answer that forced me to change "most" to "few". So this patch is not needed for now. I'll drop it. - Mani > Andrew >
diff --git a/drivers/net/mhi_net.c b/drivers/net/mhi_net.c index 3d322ac4f6a5..eddc2c701da4 100644 --- a/drivers/net/mhi_net.c +++ b/drivers/net/mhi_net.c @@ -14,7 +14,7 @@ #define MHI_NET_MIN_MTU ETH_MIN_MTU #define MHI_NET_MAX_MTU 0xffff -#define MHI_NET_DEFAULT_MTU 0x4000 +#define MHI_NET_DEFAULT_MTU 0x8000 struct mhi_net_stats { u64_stats_t rx_packets;
Most of the Qualcomm endpoint devices are supporting 32K MTU for the UL (Uplink) and DL (Downlink) channels. So let's use the same value in the MHI NET driver also. This gives almost 2x increase in the throughput for the UL channel. Below is the comparision: iperf on the UL channel with 16K MTU: [ ID] Interval Transfer Bandwidth [ 3] 0.0-10.0 sec 353 MBytes 296 Mbits/sec iperf on the UL channel with 32K MTU: [ ID] Interval Transfer Bandwidth [ 3] 0.0-10.0 sec 695 MBytes 583 Mbits/sec Cc: Loic Poulain <loic.poulain@linaro.org> Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> --- drivers/net/mhi_net.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)