[rt] Drop 0245-Revert-arm64-preempt-Fix-big-endian-when-checking-pr.patch

This commit is contained in:
Salvatore Bonaccorso 2020-01-04 00:41:02 +01:00
parent 414985d41e
commit 5b421326ca
3 changed files with 1 additions and 57 deletions

1
debian/changelog vendored
View File

@ -832,6 +832,7 @@ linux (4.19.92-1) UNRELEASED; urgency=medium
(Context changes in 4.19.88)
* [rt] Update to 4.19.90-rt35
* [rt] Drop 0013-x86-ioapic-Don-t-let-setaffinity-unmask-threaded-EOI.patch
* [rt] Drop 0245-Revert-arm64-preempt-Fix-big-endian-when-checking-pr.patch
-- Salvatore Bonaccorso <carnil@debian.org> Sat, 14 Dec 2019 22:00:16 +0100

View File

@ -1,56 +0,0 @@
From e409cdc5eac9226629a9cc2e2b18317931814014 Mon Sep 17 00:00:00 2001
From: Steven Rostedt <rostedt@goodmis.org>
Date: Wed, 18 Dec 2019 20:47:47 -0500
Subject: [PATCH 245/291] Revert: arm64: preempt: Fix big-endian when checking
preempt count in assembly
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz
Commit 7faa313f05cad184 should never have been backported to 4.19.
It depends on commit 396244692232 ("arm64: preempt: Provide our own
implementation of asm/preempt.h") which was added in 5.0.
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
---
arch/arm64/include/asm/assembler.h | 8 +++++---
arch/arm64/kernel/entry.S | 6 ++++--
2 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/arch/arm64/include/asm/assembler.h b/arch/arm64/include/asm/assembler.h
index 0c100506a29a..5a97ac853168 100644
--- a/arch/arm64/include/asm/assembler.h
+++ b/arch/arm64/include/asm/assembler.h
@@ -683,9 +683,11 @@ USER(\label, ic ivau, \tmp2) // invalidate I line PoU
.macro if_will_cond_yield_neon
#ifdef CONFIG_PREEMPT
get_thread_info x0
- ldr x0, [x0, #TSK_TI_PREEMPT]
- sub x0, x0, #PREEMPT_DISABLE_OFFSET
- cbz x0, .Lyield_\@
+ ldr w1, [x0, #TSK_TI_PREEMPT]
+ ldr x0, [x0, #TSK_TI_FLAGS]
+ cmp w1, #PREEMPT_DISABLE_OFFSET
+ csel x0, x0, xzr, eq
+ tbnz x0, #TIF_NEED_RESCHED, .Lyield_\@ // needs rescheduling?
/* fall through to endif_yield_neon */
.subsection 1
.Lyield_\@ :
diff --git a/arch/arm64/kernel/entry.S b/arch/arm64/kernel/entry.S
index bb6832353045..5f800384cb9a 100644
--- a/arch/arm64/kernel/entry.S
+++ b/arch/arm64/kernel/entry.S
@@ -622,8 +622,10 @@ el1_irq:
irq_handler
#ifdef CONFIG_PREEMPT
- ldr x24, [tsk, #TSK_TI_PREEMPT] // get preempt count
- cbnz x24, 1f // preempt count != 0
+ ldr w24, [tsk, #TSK_TI_PREEMPT] // get preempt count
+ cbnz w24, 1f // preempt count != 0
+ ldr x0, [tsk, #TSK_TI_FLAGS] // get flags
+ tbz x0, #TIF_NEED_RESCHED, 1f // needs rescheduling?
bl el1_preempt
1:
#endif
--
2.24.0

View File

@ -241,7 +241,6 @@
0242-x86-lazy-preempt-properly-check-against-preempt-mask.patch
0243-x86-lazy-preempt-use-proper-return-label-on-32bit-x8.patch
0244-arm-Add-support-for-lazy-preemption.patch
0245-Revert-arm64-preempt-Fix-big-endian-when-checking-pr.patch
0246-powerpc-Add-support-for-lazy-preemption.patch
0247-arch-arm64-Add-lazy-preempt-support.patch
0248-connector-cn_proc-Protect-send_msg-with-a-local-lock.patch