diff options
| author | Yannick Vignon <[email protected]> | 2021-11-24 15:47:31 +0000 |
|---|---|---|
| committer | Jakub Kicinski <[email protected]> | 2021-11-26 18:38:37 +0000 |
| commit | b270bfe697367776eca2e6759a71d700fb8d82a2 (patch) | |
| tree | b19a12130a54b0694ff63900e115cd5e082550ca /net/unix/af_unix.c | |
| parent | Merge branch 'tls-splice_read-fixes' (diff) | |
| download | kernel-b270bfe697367776eca2e6759a71d700fb8d82a2.tar.gz kernel-b270bfe697367776eca2e6759a71d700fb8d82a2.zip | |
net: stmmac: Disable Tx queues when reconfiguring the interface
The Tx queues were not disabled in situations where the driver needed to
stop the interface to apply a new configuration. This could result in a
kernel panic when doing any of the 3 following actions:
* reconfiguring the number of queues (ethtool -L)
* reconfiguring the size of the ring buffers (ethtool -G)
* installing/removing an XDP program (ip l set dev ethX xdp)
Prevent the panic by making sure netif_tx_disable is called when stopping
an interface.
Without this patch, the following kernel panic can be observed when doing
any of the actions above:
Unable to handle kernel paging request at virtual address ffff80001238d040
[....]
Call trace:
dwmac4_set_addr+0x8/0x10
dev_hard_start_xmit+0xe4/0x1ac
sch_direct_xmit+0xe8/0x39c
__dev_queue_xmit+0x3ec/0xaf0
dev_queue_xmit+0x14/0x20
[...]
[ end trace 0000000000000002 ]---
Fixes: 5fabb01207a2d ("net: stmmac: Add initial XDP support")
Fixes: aa042f60e4961 ("net: stmmac: Add support to Ethtool get/set ring parameters")
Fixes: 0366f7e06a6be ("net: stmmac: add ethtool support for get/set channels")
Signed-off-by: Yannick Vignon <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Jakub Kicinski <[email protected]>
Diffstat (limited to 'net/unix/af_unix.c')
0 files changed, 0 insertions, 0 deletions
