]> git.baikalelectronics.ru Git - kernel.git/commit
wifi: brcmfmac: fix scheduling while atomic issue when deleting flowring
authorWright Feng <wright.feng@cypress.com>
Fri, 22 Jul 2022 11:56:27 +0000 (13:56 +0200)
committerKalle Valo <kvalo@kernel.org>
Wed, 10 Aug 2022 05:47:22 +0000 (08:47 +0300)
commit02dc9d8f01585512a3cb187e4e840a2aab5e96bc
tree0483342ac70e5d31d1c02ab9b20ab85044742068
parent09bb88331b4e6c3773fafbe5a9208cbd264be48d
wifi: brcmfmac: fix scheduling while atomic issue when deleting flowring

We should not sleep while holding the spin lock. It makes
'scheduling while atomic' in brcmf_msgbuf_delete_flowring.
And to avoid race condition between deleting flowring and txflow,
we only hold spin lock when seting flowring status to RING_CLOSING.

Signed-off-by: Wright Feng <wright.feng@cypress.com>
Signed-off-by: Chi-Hsien Lin <chi-hsien.lin@cypress.com>
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Alvin Šipraga <alsi@bang-olufsen.dk>
Signed-off-by: Kalle Valo <kvalo@kernel.org>
Link: https://lore.kernel.org/r/20220722115632.620681-3-alvin@pqrs.dk
drivers/net/wireless/broadcom/brcm80211/brcmfmac/flowring.c
drivers/net/wireless/broadcom/brcm80211/brcmfmac/msgbuf.c