Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/8] drm/i915: PREEMPT_RT related fixups.
@ 2024-06-13 10:20 Sebastian Andrzej Siewior
  2024-06-13 10:20 ` [PATCH v2 1/8] drm/i915: Use preempt_disable/enable_rt() where recommended Sebastian Andrzej Siewior
                   ` (23 more replies)
  0 siblings, 24 replies; 35+ messages in thread
From: Sebastian Andrzej Siewior @ 2024-06-13 10:20 UTC (permalink / raw)
  To: intel-gfx, intel-xe
  Cc: Jani Nikula, Joonas Lahtinen, Rodrigo Vivi, Thomas Gleixner,
	Tvrtko Ursulin

Hi,

The following patches are from the PREEMPT_RT queue.  It is mostly about
disabling interrupts/preemption which leads to problems. Unfortunately
DRM_I915_LOW_LEVEL_TRACEPOINTS had to be disabled because it acquires locks
from within trace points. Making the lock a raw_spinlock_t led to higher
latencies during video playback
  https://lore.kernel.org/all/20211006164628.s2mtsdd2jdbfyf7g@linutronix.de/

and I'm not sure if I hit the worse case here.
I tested it on a SandyBridge with built-in i915 by using X, OpenGL and
playing videos without noticing any warnings. However, some code paths
were not entered.
I carry them for some time now and most issues were reported by other
people and they reported that things work for them since.

v1…v2:
  - The tracing disable bits (4/8) have been reworked after Steven pointed out
    that something isn't right.
  - The irq_work() bits have been dropped because they are no longer
    needed.


^ permalink raw reply	[flat|nested] 35+ messages in thread

end of thread, other threads:[~2024-06-19 10:29 UTC | newest]

Thread overview: 35+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-06-13 10:20 [PATCH v2 0/8] drm/i915: PREEMPT_RT related fixups Sebastian Andrzej Siewior
2024-06-13 10:20 ` [PATCH v2 1/8] drm/i915: Use preempt_disable/enable_rt() where recommended Sebastian Andrzej Siewior
2024-06-13 10:20 ` [PATCH v2 2/8] drm/i915: Don't disable interrupts on PREEMPT_RT during atomic updates Sebastian Andrzej Siewior
2024-06-13 10:20 ` [PATCH v2 3/8] drm/i915: Don't check for atomic context on PREEMPT_RT Sebastian Andrzej Siewior
2024-06-14  8:32   ` Tvrtko Ursulin
2024-06-14 11:05     ` Sebastian Andrzej Siewior
2024-06-14 12:19       ` Tvrtko Ursulin
2024-06-17 10:07         ` Sebastian Andrzej Siewior
2024-06-18  9:00           ` Tvrtko Ursulin
2024-06-18 12:54             ` Sebastian Andrzej Siewior
2024-06-19 10:26               ` Tvrtko Ursulin
2024-06-13 10:20 ` [PATCH v2 4/8] drm/i915: Disable tracing points " Sebastian Andrzej Siewior
2024-06-19 10:27   ` Tvrtko Ursulin
2024-06-13 10:20 ` [PATCH v2 5/8] drm/i915/gt: Use spin_lock_irq() instead of local_irq_disable() + spin_lock() Sebastian Andrzej Siewior
2024-06-13 10:20 ` [PATCH v2 6/8] drm/i915: Drop the irqs_disabled() check Sebastian Andrzej Siewior
2024-06-19 10:28   ` Tvrtko Ursulin
2024-06-13 10:20 ` [PATCH v2 7/8] drm/i915/guc: Consider also RCU depth in busy loop Sebastian Andrzej Siewior
2024-06-13 10:20 ` [PATCH v2 8/8] Revert "drm/i915: Depend on !PREEMPT_RT." Sebastian Andrzej Siewior
2024-06-19 10:29   ` Tvrtko Ursulin
2024-06-13 11:52 ` ✓ CI.Patch_applied: success for drm/i915: PREEMPT_RT related fixups. (rev3) Patchwork
2024-06-13 11:52 ` ✗ CI.checkpatch: warning " Patchwork
2024-06-13 11:53 ` ✓ CI.KUnit: success " Patchwork
2024-06-13 12:05 ` ✓ CI.Build: " Patchwork
2024-06-13 12:07 ` ✗ CI.Hooks: failure " Patchwork
2024-06-13 12:09 ` ✗ CI.checksparse: warning " Patchwork
2024-06-13 12:31 ` ✓ CI.BAT: success " Patchwork
2024-06-13 14:34 ` ✓ CI.FULL: " Patchwork
2024-06-17 10:12 ` ✓ CI.Patch_applied: success for drm/i915: PREEMPT_RT related fixups. (rev4) Patchwork
2024-06-17 10:12 ` ✗ CI.checkpatch: warning " Patchwork
2024-06-17 10:13 ` ✓ CI.KUnit: success " Patchwork
2024-06-17 10:26 ` ✓ CI.Build: " Patchwork
2024-06-17 10:30 ` ✗ CI.Hooks: failure " Patchwork
2024-06-17 10:32 ` ✗ CI.checksparse: warning " Patchwork
2024-06-17 10:54 ` ✓ CI.BAT: success " Patchwork
2024-06-17 16:35 ` ✓ CI.FULL: " Patchwork

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox