Files
linux-stable-mirror/include/linux
Sebastian Andrzej Siewior 93dea41fd6 lockdep: Don't disable interrupts on RT in disable_irq_nosync_lockdep.*()
[ Upstream commit 87886b32d6 ]

disable_irq_nosync_lockdep() disables interrupts with lockdep enabled to
avoid false positive reports by lockdep that a certain lock has not been
acquired with disabled interrupts. The user of this macros expects that
a lock can be acquried without disabling interrupts because the IRQ line
triggering the interrupt is disabled.

This triggers a warning on PREEMPT_RT because after
disable_irq_nosync_lockdep.*() the following spinlock_t now is acquired
with disabled interrupts.

On PREEMPT_RT there is no difference between spin_lock() and
spin_lock_irq() so avoiding disabling interrupts in this case works for
the two remaining callers as of today.

Don't disable interrupts on PREEMPT_RT in disable_irq_nosync_lockdep.*().

Closes: https://lore.kernel.org/760e34f9-6034-40e0-82a5-ee9becd24438@roeck-us.net
Fixes: e8106b941c ("[PATCH] lockdep: core, add enable/disable_irq_irqsave/irqrestore() APIs")
Reported-by: Guenter Roeck <linux@roeck-us.net>
Suggested-by: "Steven Rostedt (Google)" <rostedt@goodmis.org>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Tested-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20250212103619.2560503-2-bigeasy@linutronix.de
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-04-10 14:30:56 +02:00
..
2024-01-25 14:37:54 -08:00
2024-07-05 09:12:55 +02:00
2023-12-20 15:44:30 +01:00
2024-06-21 14:53:19 +02:00
2024-06-21 14:53:46 +02:00
2024-10-17 15:07:44 +02:00
2023-10-25 11:54:20 +02:00
2024-06-21 14:53:28 +02:00
2024-11-08 16:22:03 +01:00
2025-03-13 12:47:21 +01:00
2023-06-21 15:45:38 +02:00
2024-04-13 12:58:31 +02:00
2024-06-21 14:53:36 +02:00
2024-01-25 14:37:40 -08:00
2025-03-13 12:47:24 +01:00
2025-04-10 14:30:53 +02:00
2023-11-28 16:54:53 +00:00
2023-10-25 11:54:13 +02:00
2023-10-25 11:54:13 +02:00
2025-02-01 18:22:32 +01:00
2025-01-09 13:24:59 +01:00
2024-07-05 09:12:55 +02:00
2023-05-17 11:48:09 +02:00
2024-02-23 08:41:51 +01:00
2024-10-17 15:07:57 +02:00