]> git.proxmox.com Git - mirror_ubuntu-focal-kernel.git/commit
mfd: Don't use irq_create_mapping() to resolve a mapping
authorMarc Zyngier <maz@kernel.org>
Sun, 25 Jul 2021 18:07:54 +0000 (19:07 +0100)
committerKelsey Skunberg <kelsey.skunberg@canonical.com>
Tue, 12 Oct 2021 22:31:44 +0000 (16:31 -0600)
commit2753ed79622a50fc29b287f78c9e7f5a117dc1be
tree0209ed2e3bbae58c3cc1ad41234de8eff2ee8573
parent7c919b353f1132ed6fe17a49792b13570692b939
mfd: Don't use irq_create_mapping() to resolve a mapping

BugLink: https://bugs.launchpad.net/bugs/1946802
[ Upstream commit 9ff80e2de36d0554e3a6da18a171719fe8663c17 ]

Although irq_create_mapping() is able to deal with duplicate
mappings, it really isn't supposed to be a substitute for
irq_find_mapping(), and can result in allocations that take place
in atomic context if the mapping didn't exist.

Fix the handful of MFD drivers that use irq_create_mapping() in
interrupt context by using irq_find_mapping() instead.

Cc: Linus Walleij <linus.walleij@linaro.org>
Cc: Lee Jones <lee.jones@linaro.org>
Cc: Maxime Coquelin <mcoquelin.stm32@gmail.com>
Cc: Alexandre Torgue <alexandre.torgue@foss.st.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Kelsey Skunberg <kelsey.skunberg@canonical.com>
drivers/mfd/ab8500-core.c
drivers/mfd/stmpe.c
drivers/mfd/tc3589x.c
drivers/mfd/wm8994-irq.c