Low RX performance for 40G Solarflare NICs
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
linux (Ubuntu) |
Fix Committed
|
High
|
Heitor Alves de Siqueira | ||
Focal |
Fix Released
|
High
|
Heitor Alves de Siqueira | ||
Impish |
Fix Released
|
High
|
Heitor Alves de Siqueira | ||
Jammy |
Fix Committed
|
High
|
Heitor Alves de Siqueira |
Bug Description
[Impact]
* Some 40G Solarflare NICs have low RX performance in some cases, due
low RX recycle ring size
* RX recycle ring size is either 4096 for IOMMU, 16 for NOIOMMU
* The low fixed sizes can cause a high number of calls to alloc_pages,
tanking performance for higher link speeds
[Test Plan]
* Users report that iperf3 is sufficient to showcase the bad RX performance
* For some setups, RX performance was around 15Gbps while TX stayed
consistently above 30Gbps
[Fix]
* This patch sets the RX recycle ring size according to an adapter's
maximum link speed
* Fix was introduced by commit:
000fe940e51f "sfc: The size of the RX recycle ring should be more flexible"
* --!-- Commit is from net-next --!--
[Regression Potential]
* Regressions would show primarily as performance issues, as we're
effectively changing ring sizes for all RX traffic
* It's possible to see increased calls to alloc_pages if ring sizes
aren't being set correctly
* We should look out for excessive memory usage in the sfc driver due to
the increased ring sizes
Changed in linux (Ubuntu Impish): | |
importance: | Undecided → High |
Changed in linux (Ubuntu Focal): | |
importance: | Undecided → High |
Changed in linux (Ubuntu Impish): | |
assignee: | nobody → Heitor Alves de Siqueira (halves) |
Changed in linux (Ubuntu Focal): | |
assignee: | nobody → Heitor Alves de Siqueira (halves) |
Changed in linux (Ubuntu Impish): | |
status: | New → In Progress |
Changed in linux (Ubuntu Jammy): | |
status: | Confirmed → In Progress |
Changed in linux (Ubuntu Focal): | |
status: | New → In Progress |
Changed in linux (Ubuntu Jammy): | |
status: | In Progress → Fix Committed |
Changed in linux (Ubuntu Impish): | |
status: | In Progress → Fix Committed |
Changed in linux (Ubuntu Focal): | |
status: | In Progress → Fix Committed |
This bug is awaiting verification that the linux/5.13.0-38.43 kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification- needed- impish' to 'verification- done-impish' . If the problem still exists, change the tag 'verification- needed- impish' to 'verification- failed- impish' .
If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.
See https:/ /wiki.ubuntu. com/Testing/ EnableProposed for documentation how to enable and use -proposed. Thank you!