Breno Leitao
14d069d929
i2c: tegra: Do not mark ACPI devices as irq safe
...
On ACPI machines, the tegra i2c module encounters an issue due to a
mutex being called inside a spinlock. This leads to the following bug:
BUG: sleeping function called from invalid context at kernel/locking/mutex.c:585
...
Call trace:
__might_sleep
__mutex_lock_common
mutex_lock_nested
acpi_subsys_runtime_resume
rpm_resume
tegra_i2c_xfer
The problem arises because during __pm_runtime_resume(), the spinlock
&dev->power.lock is acquired before rpm_resume() is called. Later,
rpm_resume() invokes acpi_subsys_runtime_resume(), which relies on
mutexes, triggering the error.
To address this issue, devices on ACPI are now marked as not IRQ-safe,
considering the dependency of acpi_subsys_runtime_resume() on mutexes.
Fixes: bd2fdedbf2 ("i2c: tegra: Add the ACPI support")
Cc: <stable@vger.kernel.org > # v5.17+
Co-developed-by: Michael van der Westhuizen <rmikey@meta.com >
Signed-off-by: Michael van der Westhuizen <rmikey@meta.com >
Signed-off-by: Breno Leitao <leitao@debian.org >
Reviewed-by: Dmitry Osipenko <digetx@gmail.com >
Reviewed-by: Andy Shevchenko <andy@kernel.org >
Signed-off-by: Andi Shyti <andi.shyti@kernel.org >
2024-08-15 00:22:28 +02:00
..
2024-07-11 15:13:10 +02:00
2024-05-06 00:56:48 +02:00
2024-07-09 00:46:06 +02:00
2024-07-11 15:13:11 +02:00
2024-01-18 21:10:41 +01:00
2024-01-18 21:10:41 +01:00
2022-11-01 13:41:22 +01:00
2024-05-06 00:56:49 +02:00
2022-11-01 13:41:22 +01:00
2024-03-08 10:10:27 +01:00
2023-10-21 20:45:29 +02:00
2024-05-06 00:56:31 +02:00
2024-06-12 17:07:33 +01:00
2020-11-03 21:34:40 +01:00
2024-07-11 15:13:11 +02:00
2023-10-28 14:34:53 +02:00
2024-07-11 15:13:12 +02:00
2024-05-06 00:56:32 +02:00
2024-07-11 15:13:12 +02:00
2024-07-11 15:13:12 +02:00
2024-05-13 15:56:14 +02:00
2023-06-05 09:47:37 +02:00
2024-07-09 00:46:06 +02:00
2022-02-15 10:04:53 +01:00
2024-07-11 15:13:13 +02:00
2024-07-11 15:13:30 +02:00
2024-07-11 15:14:26 +02:00
2024-07-11 15:14:06 +02:00
2024-07-11 15:14:07 +02:00
2023-04-20 18:20:05 +08:00
2022-02-11 15:38:23 +01:00
2024-02-27 01:51:33 +01:00
2024-02-27 01:51:35 +01:00
2024-02-27 01:51:35 +01:00
2024-05-06 00:56:55 +02:00
2024-07-09 00:56:44 +02:00
2024-06-12 17:07:34 +01:00
2024-07-11 15:14:07 +02:00
2024-07-11 15:14:08 +02:00
2024-07-11 15:14:08 +02:00
2022-08-11 23:02:51 +02:00
2024-01-18 21:10:41 +01:00
2023-08-14 17:47:21 +02:00
2024-05-06 00:56:50 +02:00
2024-07-11 15:14:09 +02:00
2024-07-11 15:14:09 +02:00
2023-08-14 17:47:21 +02:00
2024-07-11 15:14:09 +02:00
2024-07-11 15:14:10 +02:00
2024-07-11 15:14:10 +02:00
2024-07-11 15:14:11 +02:00
2024-07-11 15:14:11 +02:00
2022-08-11 23:02:51 +02:00
2024-05-06 00:56:33 +02:00
2024-05-06 00:56:51 +02:00
2024-03-15 12:09:49 -07:00
2024-07-11 15:14:11 +02:00
2024-07-11 15:14:12 +02:00
2024-05-06 00:56:34 +02:00
2024-07-11 15:14:12 +02:00
2024-07-11 15:14:13 +02:00
2024-07-11 15:14:13 +02:00
2024-07-11 15:14:13 +02:00
2024-07-11 15:14:14 +02:00
2023-06-05 10:43:45 +02:00
2023-08-14 17:47:21 +02:00
2023-08-08 15:36:55 +02:00
2023-08-14 18:09:44 +02:00
2024-07-11 15:14:14 +02:00
2024-07-11 15:14:14 +02:00
2023-09-19 22:00:22 +02:00
2024-07-11 15:14:15 +02:00
2024-07-11 15:14:15 +02:00
2023-08-14 17:47:21 +02:00
2024-01-18 21:10:41 +01:00
2024-05-20 08:55:18 -07:00
2024-02-14 22:51:54 +01:00
2024-07-11 15:14:25 +02:00
2024-07-11 15:14:16 +02:00
2024-07-11 15:14:16 +02:00
2024-07-11 15:14:16 +02:00
2024-07-11 15:14:16 +02:00
2024-07-09 00:46:07 +02:00
2024-07-11 15:14:17 +02:00
2024-07-11 15:14:17 +02:00
2024-07-03 16:44:22 +02:00
2024-07-11 15:14:17 +02:00
2022-11-12 21:30:16 +01:00
2024-01-18 21:10:41 +01:00
2023-06-23 11:56:34 +02:00
2021-01-26 07:42:27 +01:00
2023-08-14 17:47:21 +02:00
2024-07-20 13:29:10 +02:00
2024-07-04 00:17:47 +02:00
2024-07-11 15:14:18 +02:00
2024-07-11 15:14:18 +02:00
2024-07-09 00:46:06 +02:00
2023-08-25 22:07:10 +02:00
2024-08-14 00:58:04 +02:00
2024-07-09 00:46:06 +02:00
2024-07-19 16:46:26 -07:00
2024-07-11 15:14:19 +02:00
2024-07-11 15:14:19 +02:00
2024-07-11 15:14:20 +02:00
2024-07-11 15:14:20 +02:00
2024-05-06 00:56:54 +02:00
2024-01-18 21:10:41 +01:00
2024-01-18 21:10:41 +01:00
2024-05-06 00:56:36 +02:00
2024-01-18 21:10:41 +01:00
2023-06-05 09:47:37 +02:00
2024-01-18 21:10:41 +01:00
2024-01-18 21:10:41 +01:00
2024-07-11 15:14:20 +02:00
2024-07-11 15:14:21 +02:00
2024-07-11 15:14:26 +02:00
2020-09-21 11:45:43 +02:00
2024-07-11 15:14:21 +02:00
2024-05-06 00:56:52 +02:00
2024-07-11 15:14:21 +02:00
2024-05-23 13:38:15 +02:00
2024-07-11 15:14:22 +02:00
2024-07-11 15:14:22 +02:00
2024-08-15 00:22:28 +02:00
2024-07-11 15:14:23 +02:00
2024-07-11 15:14:23 +02:00
2024-07-11 15:14:23 +02:00
2024-07-11 15:14:24 +02:00
2023-06-14 10:40:09 +02:00
2024-01-18 21:10:41 +01:00
2024-07-11 15:14:24 +02:00
2024-06-26 16:07:21 +02:00
2024-07-11 15:14:24 +02:00
2024-07-11 15:14:24 +02:00
2024-01-18 21:10:41 +01:00
2024-07-11 15:14:24 +02:00
2024-07-11 15:14:25 +02:00
2023-09-29 11:55:21 +01:00
2024-07-09 00:46:12 +02:00
2023-08-10 10:12:55 +02:00
2024-07-20 13:29:10 +02:00
2024-06-26 16:07:21 +02:00
2024-01-18 21:10:41 +01:00