]> git.itanic.dy.fi Git - linux-stable/commit
wifi: iwlwifi: mvm: fix cancel_delayed_work_sync() deadlock
authorJohannes Berg <johannes.berg@intel.com>
Sun, 14 May 2023 09:15:46 +0000 (12:15 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 24 May 2023 16:36:51 +0000 (17:36 +0100)
commitd66490c293649e3dd5ed84a151c82c00a5541a24
tree958f5bdb61272c0b8452d960701f5b7a2a853aa0
parentfce7d92a8990b7e2601797a3d83ae479d7a7cebc
wifi: iwlwifi: mvm: fix cancel_delayed_work_sync() deadlock

[ Upstream commit c2d8b7f257b2398f2d866205365895e038beca12 ]

Lockdep points out that we can deadlock here by calling
cancel_delayed_work_sync() because that might be already
running and gotten interrupted by the NAPI soft-IRQ.
Even just calling something that can sleep is wrong in
this context though.

Luckily, it doesn't even really matter since the things
we need to do are idempotent, so just drop the _sync().

Fixes: e5d153ec54f0 ("iwlwifi: mvm: fix CSA AP side")
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Gregory Greenman <gregory.greenman@intel.com>
Link: https://lore.kernel.org/r/20230514120631.b1813c823b4d.I9d20cc06d24fa40b6774d3dd95ea5e2bf8dd015b@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/wireless/intel/iwlwifi/mvm/rxmq.c