summaryrefslogtreecommitdiff
path: root/kernel/signal.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2019-08-26 11:59:57 +0200
committerIngo Molnar <mingo@kernel.org>2019-08-26 11:59:57 +0200
commit8db5957bc736f0fcbe187ab460e5448d82b41c03 (patch)
tree070b560282ddc4a9a86018ccc59b888b6347ece0 /kernel/signal.c
parent49c46457caadb8c170fd841bd8051e03062d9b8b (diff)
parenta55aa89aab90fae7c815b0551b07be37db359d76 (diff)
Merge tag 'v5.3-rc6' into perf/core, to pick up fixes
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'kernel/signal.c')
-rw-r--r--kernel/signal.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/kernel/signal.c b/kernel/signal.c
index e667be6907d7..534fec266a33 100644
--- a/kernel/signal.c
+++ b/kernel/signal.c
@@ -90,6 +90,11 @@ static bool sig_task_ignored(struct task_struct *t, int sig, bool force)
handler == SIG_DFL && !(force && sig_kernel_only(sig)))
return true;
+ /* Only allow kernel generated signals to this kthread */
+ if (unlikely((t->flags & PF_KTHREAD) &&
+ (handler == SIG_KTHREAD_KERNEL) && !force))
+ return true;
+
return sig_handler_ignored(handler, sig);
}