Evan Green fc3e62e25c soc: qcom: smp2p: Safely acquire spinlock without IRQs
smp2p_update_bits() should disable interrupts when it acquires its
spinlock. This is important because without the _irqsave, a priority
inversion can occur.

This function is called both with interrupts enabled in
qcom_q6v5_request_stop(), and with interrupts disabled in
ipa_smp2p_panic_notifier(). IRQ handling of spinlocks should be
consistent to avoid the panic notifier deadlocking because it's
sitting on the thread that's already got the lock via _request_stop().

Found via lockdep.

Cc: stable@vger.kernel.org
Fixes: 50e99641413e7 ("soc: qcom: smp2p: Qualcomm Shared Memory Point to Point")
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Signed-off-by: Evan Green <evgreen@chromium.org>
Link: https://lore.kernel.org/r/20200929133040.RESEND.1.Ideabf6dcdfc577cf39ce3d95b0e4aa1ac8b38f0c@changeid
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
2020-10-26 09:52:11 -05:00
..
2020-10-23 16:38:36 -07:00
2020-10-25 10:55:35 -07:00
2020-10-24 10:39:22 -07:00
2020-10-24 10:39:22 -07:00
2020-10-16 12:21:15 -07:00
2020-10-19 14:28:30 -07:00
2020-10-24 10:39:22 -07:00
2020-10-15 14:43:29 -07:00
2020-10-12 13:26:49 -07:00
2020-10-24 10:39:22 -07:00
2020-10-14 15:56:58 -07:00
2020-10-24 10:39:22 -07:00
2020-10-24 10:33:08 -07:00
2020-10-13 12:12:44 -07:00
2020-10-23 10:54:13 -07:00
2020-10-17 11:18:18 -07:00
2020-10-20 09:35:06 -07:00
2020-10-16 12:21:15 -07:00
2020-10-24 10:39:22 -07:00
2020-10-15 14:43:29 -07:00
2020-10-24 10:39:22 -07:00
2020-10-14 15:15:35 -07:00
2020-10-14 15:56:58 -07:00
2020-10-22 12:41:00 -07:00
2020-10-24 10:33:08 -07:00
2020-10-20 10:36:41 -07:00
2020-10-25 11:12:31 -07:00
2020-10-22 13:00:44 -07:00
2020-10-22 12:41:00 -07:00
2020-10-24 10:33:08 -07:00
2020-10-24 10:33:08 -07:00
2020-10-22 12:56:33 -07:00
2020-10-24 10:39:22 -07:00
2020-10-22 12:58:21 -07:00
2020-10-21 11:22:08 -07:00
2020-10-24 12:46:42 -07:00
2020-10-24 10:33:08 -07:00
2020-10-23 16:19:02 -07:00
2020-10-24 10:33:08 -07:00
2020-10-24 10:33:08 -07:00
2020-10-23 11:00:57 -07:00
2020-10-22 13:00:44 -07:00
2020-10-24 10:33:08 -07:00
2020-10-23 11:00:57 -07:00
2020-10-24 10:33:08 -07:00
2020-10-25 10:55:35 -07:00