net: stmmac: Re-work the queue selection for TSO packets
authorJose Abreu <Jose.Abreu@synopsys.com>
Mon, 8 Jul 2019 12:26:28 +0000 (14:26 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 28 Jul 2019 06:29:25 +0000 (08:29 +0200)
commitf47f68cc9d33572c3bee66eb86aa9db5dc612ddd
tree2506c4d85d1b79edd7dda48a6fb5665a82e22d34
parent201d7d62a82a01f6085adc08e9fa2c093f717d25
net: stmmac: Re-work the queue selection for TSO packets

[ Upstream commit 4993e5b37e8bcb55ac90f76eb6d2432647273747 ]

Ben Hutchings says:
"This is the wrong place to change the queue mapping.
stmmac_xmit() is called with a specific TX queue locked,
and accessing a different TX queue results in a data race
for all of that queue's state.

I think this commit should be reverted upstream and in all
stable branches.  Instead, the driver should implement the
ndo_select_queue operation and override the queue mapping there."

Fixes: c5acdbee22a1 ("net: stmmac: Send TSO packets always from Queue 0")
Suggested-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: Jose Abreu <joabreu@synopsys.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c