Re: [PATCH net] net: stmmac: Disable Tx queues when reconfiguring the interface
From: Yannick Vignon <hidden>
Date: 2021-11-24 12:12:28
On 11/24/2021 11:06 AM, Vladimir Oltean wrote:
On Tue, Nov 23, 2021 at 08:07:51PM -0800, Jakub Kicinski wrote:quoted
On Tue, 23 Nov 2021 19:54:48 +0100 Yannick Vignon wrote:quoted
From: Yannick Vignon <redacted> The Tx queues were not disabled in cases 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 loading an XDP program: 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: 78cb988d36b6 ("net: stmmac: Add initial XDP support") Signed-off-by: Yannick Vignon <redacted>Fixes tag: Fixes: 78cb988d36b6 ("net: stmmac: Add initial XDP support") Has these problem(s): - Target SHA1 does not existYou caught him backporting! Although I agree, things sent to the "net" tree should also be tested against the "net" tree.
That would be more like forward-porting in this case, since I first fixed the issue on an older 5.10 kernel :) And yes, I did reproduce the bug and confirm the fix on the tip of the netdev branch yesterday before sending the patch. But I guess I looked at the wrong branch when adding the Fixes tag... Will post a V2 to fix the Fixes tag.