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