[Intel-xe] ✓ CI.checkpatch: success for drm/xe: Fix an invalid locking wait context bug (rev3)
Patchwork
patchwork at emeril.freedesktop.org
Wed Jul 26 22:29:13 UTC 2023
== Series Details ==
Series: drm/xe: Fix an invalid locking wait context bug (rev3)
URL : https://patchwork.freedesktop.org/series/121003/
State : success
== Summary ==
+ KERNEL=/kernel
+ git clone https://gitlab.freedesktop.org/drm/maintainer-tools mt
Cloning into 'mt'...
warning: redirecting to https://gitlab.freedesktop.org/drm/maintainer-tools.git/
+ git -C mt rev-list -n1 origin/master
c7d32770e3cd31d9fc134ce41f329b10aa33ee15
+ cd /kernel
+ git config --global --add safe.directory /kernel
+ git log -n1
commit 02a31b01797ece832ffd8850a65c07d21b26c6f0
Author: Rodrigo Vivi <rodrigo.vivi at intel.com>
Date: Wed Jul 26 17:30:42 2023 -0400
drm/xe: Fix an invalid locking wait context bug
We cannot have spin locks around xe_irq_reset, since it will
call the intel_display_power_is_enabled() function, and
that needs a mutex lock. Hence causing the undesired
"[ BUG: Invalid wait context ]"
We cannot convert i915's power domain lock to spin lock
due to the nested dependency of non-atomic context waits.
So, let's move the xe_irq_reset functions from the
critical area, while still ensuring that we are protecting
the irq.enabled and ensuring the right serialization
in the irq handlers.
v2: On the first version, I had missed the fact that
irq.enabled is checked on the xe/display glue layer,
and that i915 display code is actually using the irq
spin lock properly. So, this got changed to a version
suggested by Matthew Auld.
v3: do not use lockdep_assert for display glue.
do not save restore irq from inside IRQ or we can
get bogus irq restore warnings
Closes: https://gitlab.freedesktop.org/drm/xe/kernel/-/issues/463
Suggested-by: Matthew Auld <matthew.auld at intel.com>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi at intel.com>
+ /mt/dim checkpatch b8202a008e7c05d97c26cb61012c36d0f249eaa1 drm-intel
02a31b017 drm/xe: Fix an invalid locking wait context bug
More information about the Intel-xe
mailing list