Thread (21 messages) 21 messages, 5 authors, 2021-01-25

Re: net: tso: add UDP segmentation support: adds regression for ax200 upload

From: Ben Greear <hidden>
Date: 2020-12-17 17:57:15

On 12/17/20 2:11 AM, Eric Dumazet wrote:
On Thu, Dec 17, 2020 at 12:59 AM Ben Greear [off-list ref] wrote:
quoted
On 12/16/20 3:09 PM, Ben Greear wrote:
quoted
Hello Eric,

The patch below evidently causes TCP throughput to be about 50Mbps instead of 700Mbps
when using ax200 to upload tcp traffic.

When I disable TSO, performance goes back up to around 700Mbps.
As a followup, when I revert the patch, upload speed goes to ~900Mbps,
so even better than just disabling TSO (I left TSO enabled after reverting the patch).

Thanks,
Ben
Thanks for the report !

It seems drivers/net/wireless/intel/iwlwifi/pcie/tx.c:iwl_fill_data_tbs_amsdu()
calls tso_build_hdr() with extra bytes (SNAP header),
it is not yet clear to me what is broken :/
Your patch is guessing tcp vs udp by looking at header length
from what I could tell.  So if something uses a different size,
it probably gets confused?
Can you confirm which driver is used for ax200 ?

I see tso_build_hdr() also being used from
drivers/net/wireless/intel/iwlwifi/queue/tx.c
I tested against the un-modified ax200 5.10.0 kernel driver, and it has the issue.

The ax200 backports release/core56 driver acts a bit different (poorer performance over all than
in-kernel driver), but has similar upstream issues that are mitigated by
disabling TSO.

Thanks,
Ben

-- 
Ben Greear [off-list ref]
Candela Technologies Inc  http://www.candelatech.com
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help