summaryrefslogtreecommitdiff
path: root/include/linux/devm-helpers.h
diff options
context:
space:
mode:
authorRaju Rangoju <Raju.Rangoju@amd.com>2026-03-02 09:51:24 +0530
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2026-03-13 17:20:43 +0100
commitd6bdc685e19fa9bc9cc09ec0c3a9dccf000b2841 (patch)
tree2283c48a42658af94c8ad933f226e313c587a490 /include/linux/devm-helpers.h
parent4bdc94d45d5459f0149085dfc1efe733c8e14f11 (diff)
amd-xgbe: fix sleep while atomic on suspend/resume
[ Upstream commit e2f27363aa6d983504c6836dd0975535e2e9dba0 ] The xgbe_powerdown() and xgbe_powerup() functions use spinlocks (spin_lock_irqsave) while calling functions that may sleep: - napi_disable() can sleep waiting for NAPI polling to complete - flush_workqueue() can sleep waiting for pending work items This causes a "BUG: scheduling while atomic" error during suspend/resume cycles on systems using the AMD XGBE Ethernet controller. The spinlock protection in these functions is unnecessary as these functions are called from suspend/resume paths which are already serialized by the PM core Fix this by removing the spinlock. Since only code that takes this lock is xgbe_powerdown() and xgbe_powerup(), remove it completely. Fixes: c5aa9e3b8156 ("amd-xgbe: Initial AMD 10GbE platform driver") Signed-off-by: Raju Rangoju <Raju.Rangoju@amd.com> Link: https://patch.msgid.link/20260302042124.1386445-1-Raju.Rangoju@amd.com Signed-off-by: Jakub Kicinski <kuba@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'include/linux/devm-helpers.h')
0 files changed, 0 insertions, 0 deletions