On Mon, 22 Sep 2025 17:07:48 +0200, Marek Vasut wrote:
The tegra_msi_irq_unmask() function may be called from a PCI driver request_threaded_irq() function. This triggers kernel/irq/manage.c __setup_irq() which locks raw spinlock &desc->lock descriptor lock and with that descriptor lock held, calls tegra_msi_irq_unmask().
Since the &desc->lock descriptor lock is a raw spinlock , and the tegra_msi .mask_lock is not a raw spinlock, this setup triggers 'BUG: Invalid wait context' with CONFIG_PROVE_RAW_LOCK_NESTING=y .
[...]
Applied, thanks!
[1/1] PCI: tegra: Convert struct tegra_msi mask_lock into raw spinlock commit: 39ec28d01d565030aa28d87a212d201c252c072e
Best regards,