Bug fix for ktls feature
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
linux (Ubuntu) |
Invalid
|
Medium
|
Jeff Lane | ||
Focal |
Invalid
|
Medium
|
Jeff Lane |
Bug Description
[IMPACT]
Clearing the sock TX queue in sk_set_socket() might cause unexpected
out-of-order transmit when called from sock_orphan(), as outstanding
packets can pick a different TX queue and bypass the ones already queued.
This is undesired in general. More specifically, it breaks the in-order
scheduling property guarantee for device-offloaded TLS sockets.
Remove the call to sk_tx_queue_clear() in sk_set_socket(), and add it
explicitly only where needed.
[FIXES]
e022f0b4a03f "net: Introduce sk_tx_queue_
This cleanly cherry picks into 5.4 from 5.8.
It can be checked out in my branch here:
https:/
[REGRESSION RISK]
low!
[TEST]
reproducing the bug is not trivial. in general terms:
nic: ConnectX6-dx with crypto enabled
send intense encrypted tcp traffic with tls offload between many clients and one server.
* clients may run on the same machine.
* clients continuously opens and closes connection to server
at some point decryption errores might arise on some of the clients.
Changed in linux (Ubuntu): | |
status: | Incomplete → In Progress |
importance: | Undecided → Medium |
assignee: | nobody → Jeff Lane (bladernr) |
Changed in linux (Ubuntu Focal): | |
status: | New → In Progress |
importance: | Undecided → Medium |
assignee: | nobody → Jeff Lane (bladernr) |
description: | updated |
description: | updated |
This bug is missing log files that will aid in diagnosing the problem. While running an Ubuntu kernel (not a mainline or third-party kernel) please enter the following command in a terminal window:
apport-collect 1889625
and then change the status of the bug to 'Confirmed'.
If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.
This change has been made by an automated script, maintained by the Ubuntu Kernel Team.