diff options
author | Stefan Wahren | 2023-12-06 15:12:20 +0100 |
---|---|---|
committer | Greg Kroah-Hartman | 2023-12-20 17:00:15 +0100 |
commit | 2127142c179c16681a2079993001fce6201d363e (patch) | |
tree | 50cc3f0a82f4b313dd884a58ce5f230f7ab46425 /drivers/net/rionet.c | |
parent | 0da41ddfb2913ab03429725d940b3b1eaded6c6a (diff) |
qca_debug: Prevent crash on TX ring changes
[ Upstream commit f4e6064c97c050bd9904925ff7d53d0c9954fc7b ]
The qca_spi driver stop and restart the SPI kernel thread
(via ndo_stop & ndo_open) in case of TX ring changes. This is
a big issue because it allows userspace to prevent restart of
the SPI kernel thread (via signals). A subsequent change of
TX ring wrongly assume a valid spi_thread pointer which result
in a crash.
So prevent this by stopping the network traffic handling and
temporary park the SPI thread.
Fixes: 291ab06ecf67 ("net: qualcomm: new Ethernet over SPI driver for QCA7000")
Signed-off-by: Stefan Wahren <wahrenst@gmx.net>
Link: https://lore.kernel.org/r/20231206141222.52029-2-wahrenst@gmx.net
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers/net/rionet.c')
0 files changed, 0 insertions, 0 deletions