signal.c (9866d141a0977ace974400bf1f793dfc163409ce) signal.c (8f6bb793b2be82f1f73bfb416486f156f70b4314)
1// SPDX-License-Identifier: GPL-2.0
2
3#include <linux/signal.h>
4#include <linux/uaccess.h>
5#include <linux/syscalls.h>
6#include <linux/tracehook.h>
7
8#include <asm/traps.h>

--- 239 unchanged lines hidden (view full) ---

248
249/*
250 * notification of userspace execution resumption
251 * - triggered by the _TIF_WORK_MASK flags
252 */
253asmlinkage void do_notify_resume(struct pt_regs *regs,
254 unsigned long thread_info_flags)
255{
1// SPDX-License-Identifier: GPL-2.0
2
3#include <linux/signal.h>
4#include <linux/uaccess.h>
5#include <linux/syscalls.h>
6#include <linux/tracehook.h>
7
8#include <asm/traps.h>

--- 239 unchanged lines hidden (view full) ---

248
249/*
250 * notification of userspace execution resumption
251 * - triggered by the _TIF_WORK_MASK flags
252 */
253asmlinkage void do_notify_resume(struct pt_regs *regs,
254 unsigned long thread_info_flags)
255{
256 if (thread_info_flags & _TIF_UPROBE)
257 uprobe_notify_resume(regs);
258
256 /* Handle pending signal delivery */
257 if (thread_info_flags & _TIF_SIGPENDING)
258 do_signal(regs);
259
260 if (thread_info_flags & _TIF_NOTIFY_RESUME) {
261 clear_thread_flag(TIF_NOTIFY_RESUME);
262 tracehook_notify_resume(regs);
263 rseq_handle_notify_resume(NULL, regs);
264 }
265}
259 /* Handle pending signal delivery */
260 if (thread_info_flags & _TIF_SIGPENDING)
261 do_signal(regs);
262
263 if (thread_info_flags & _TIF_NOTIFY_RESUME) {
264 clear_thread_flag(TIF_NOTIFY_RESUME);
265 tracehook_notify_resume(regs);
266 rseq_handle_notify_resume(NULL, regs);
267 }
268}