summaryrefslogtreecommitdiff
path: root/arch/score/kernel/signal.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/score/kernel/signal.c')
-rw-r--r--arch/score/kernel/signal.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/arch/score/kernel/signal.c b/arch/score/kernel/signal.c
index a087ad85175a..d4a49011c48a 100644
--- a/arch/score/kernel/signal.c
+++ b/arch/score/kernel/signal.c
@@ -28,6 +28,7 @@
#include <linux/ptrace.h>
#include <linux/unistd.h>
#include <linux/uaccess.h>
+#include <linux/tracehook.h>
#include <asm/cacheflush.h>
#include <asm/syscalls.h>
@@ -350,6 +351,12 @@ asmlinkage void do_notify_resume(struct pt_regs *regs, void *unused,
__u32 thread_info_flags)
{
/* deal with pending signal delivery */
- if (thread_info_flags & (_TIF_SIGPENDING | _TIF_RESTORE_SIGMASK))
+ if (thread_info_flags & _TIF_SIGPENDING)
do_signal(regs);
+ if (thread_info_flags & _TIF_NOTIFY_RESUME) {
+ clear_thread_flag(TIF_NOTIFY_RESUME);
+ tracehook_notify_resume(regs);
+ if (current->replacement_session_keyring)
+ key_replace_session_keyring();
+ }
}