Hello RT-list!
I'm pleased to announce the 5.10.194-rt95 stable release.
This release is an RT-only update. All the changes here are specific to RT.
You can get this release via the git tree at:
git://git.kernel.org/pub/scm/linux/kernel/git/rt/linux-stable-rt.git
branch: v5.10-rt
Head SHA1: e9e1d0b892ed4e46c4d83b53f0f39880e37f8d92
Or to build 5.10.194-rt95 directly, the following patches should be applied:
https://www.kernel.org/pub/linux/kernel/v5.x/linux-5.10.tar.xz
https://www.kernel.org/pub/linux/kernel/v5.x/patch-5.10.194.xz
https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patch-5.10.194-rt95.patch.xz
Signing key fingerprint:
9354 0649 9972 8D31 D464 D140 F394 A423 F8E6 7C26
All keys used for the above files and repositories can be found on the
following git repository:
git://git.kernel.org/pub/scm/docs/kernel/pgpkeys.git
Enjoy!
Luis
Changes from v5.10.194-rt94:
---
Luis Claudio R. Goncalves (1):
Linux 5.10.194-rt95
Wang Yong (1):
arm64: signal: Use ARCH_RT_DELAYS_SIGNAL_SEND
---
arch/arm64/include/asm/signal.h | 12 ++++++++++++
arch/arm64/kernel/signal.c | 9 +++++++++
localversion-rt | 2 +-
3 files changed, 22 insertions(+), 1 deletion(-)
---
diff --git a/arch/arm64/include/asm/signal.h b/arch/arm64/include/asm/signal.h
new file mode 100644
index 0000000000000..0fb418cf4c17a
--- /dev/null
+++ b/arch/arm64/include/asm/signal.h
@@ -0,0 +1,12 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+#ifndef __ARM64_ASM_SIGNAL_H
+#define __ARM64_ASM_SIGNAL_H
+
+#include <uapi/asm/signal.h>
+#include <uapi/asm/siginfo.h>
+
+#if defined(CONFIG_PREEMPT_RT)
+#define ARCH_RT_DELAYS_SIGNAL_SEND
+#endif
+
+#endif
diff --git a/arch/arm64/kernel/signal.c b/arch/arm64/kernel/signal.c
index 94eed0dc3afcd..5b08f55ec85d9 100644
--- a/arch/arm64/kernel/signal.c
+++ b/arch/arm64/kernel/signal.c
@@ -929,6 +929,15 @@ asmlinkage void do_notify_resume(struct pt_regs *regs,
} else {
local_daif_restore(DAIF_PROCCTX);
+#ifdef ARCH_RT_DELAYS_SIGNAL_SEND
+ if (unlikely(current->forced_info.si_signo)) {
+ struct task_struct *t = current;
+
+ force_sig_info(&t->forced_info);
+ t->forced_info.si_signo = 0;
+ }
+#endif
+
if (thread_flags & _TIF_UPROBE)
uprobe_notify_resume(regs);
diff --git a/localversion-rt b/localversion-rt
index 8d02a9bac5002..5a28f0a65d160 100644
--- a/localversion-rt
+++ b/localversion-rt
@@ -1 +1 @@
--rt94
+-rt95