From: Tariq Toukan <[email protected]>
Date: Mon, 22 Jun 2020 23:26:04 +0300
> 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_mapping")
> Signed-off-by: Tariq Toukan <[email protected]>
> Reviewed-by: Boris Pismenny <[email protected]>
Applied and queued up for -stable, thank you.