From 6e8120921499e4a35115d4623621b7729178c9e7 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Mon, 1 Jul 2024 19:14:04 +0200 Subject: Adding debian version 6.9.7-1. Signed-off-by: Daniel Baumann --- ...5-gt-Queue-and-wait-for-the-irq_work-item.patch | 42 ---------------------- debian/patches-rt/series | 1 - 2 files changed, 43 deletions(-) delete mode 100644 debian/patches-rt/0008-drm-i915-gt-Queue-and-wait-for-the-irq_work-item.patch (limited to 'debian/patches-rt') diff --git a/debian/patches-rt/0008-drm-i915-gt-Queue-and-wait-for-the-irq_work-item.patch b/debian/patches-rt/0008-drm-i915-gt-Queue-and-wait-for-the-irq_work-item.patch deleted file mode 100644 index 87797042a..000000000 --- a/debian/patches-rt/0008-drm-i915-gt-Queue-and-wait-for-the-irq_work-item.patch +++ /dev/null @@ -1,42 +0,0 @@ -From: Sebastian Andrzej Siewior -Date: Wed, 8 Sep 2021 17:18:00 +0200 -Subject: [PATCH 08/10] drm/i915/gt: Queue and wait for the irq_work item. -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/6.9/older/patches-6.9-rt5.tar.xz - -Disabling interrupts and invoking the irq_work function directly breaks -on PREEMPT_RT. -PREEMPT_RT does not invoke all irq_work from hardirq context because -some of the user have spinlock_t locking in the callback function. -These locks are then turned into a sleeping locks which can not be -acquired with disabled interrupts. - -Using irq_work_queue() has the benefit that the irqwork will be invoked -in the regular context. In general there is "no" delay between enqueuing -the callback and its invocation because the interrupt is raised right -away on architectures which support it (which includes x86). - -Use irq_work_queue() + irq_work_sync() instead invoking the callback -directly. - -Reported-by: Clark Williams -Signed-off-by: Sebastian Andrzej Siewior -Reviewed-by: Maarten Lankhorst ---- - drivers/gpu/drm/i915/gt/intel_breadcrumbs.c | 5 ++--- - 1 file changed, 2 insertions(+), 3 deletions(-) - ---- a/drivers/gpu/drm/i915/gt/intel_breadcrumbs.c -+++ b/drivers/gpu/drm/i915/gt/intel_breadcrumbs.c -@@ -317,10 +317,9 @@ void __intel_breadcrumbs_park(struct int - /* Kick the work once more to drain the signalers, and disarm the irq */ - irq_work_sync(&b->irq_work); - while (READ_ONCE(b->irq_armed) && !atomic_read(&b->active)) { -- local_irq_disable(); -- signal_irq_work(&b->irq_work); -- local_irq_enable(); -+ irq_work_queue(&b->irq_work); - cond_resched(); -+ irq_work_sync(&b->irq_work); - } - } - diff --git a/debian/patches-rt/series b/debian/patches-rt/series index 34486c1a6..473503145 100644 --- a/debian/patches-rt/series +++ b/debian/patches-rt/series @@ -114,7 +114,6 @@ zram-Replace-bit-spinlocks-with-spinlock_t-for-PREEM.patch 0004-drm-i915-Don-t-disable-interrupts-on-PREEMPT_RT-duri.patch 0005-drm-i915-Don-t-check-for-atomic-context-on-PREEMPT_R.patch drm-i915-Disable-tracing-points-on-PREEMPT_RT.patch -0008-drm-i915-gt-Queue-and-wait-for-the-irq_work-item.patch 0009-drm-i915-gt-Use-spin_lock_irq-instead-of-local_irq_d.patch 0010-drm-i915-Drop-the-irqs_disabled-check.patch drm-i915-guc-Consider-also-RCU-depth-in-busy-loop.patch -- cgit v1.2.3