rseq: Remove the ksig argument from rseq_handle_notify_resume()

There is no point for this being visible in the resume_to_user_mode()
handling.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Reviewed-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Link: https://patch.msgid.link/20251027084306.211520245@linutronix.de
This commit is contained in:
Thomas Gleixner
2025-10-27 09:44:22 +01:00
committed by Ingo Molnar
parent 77f19e4d4f
commit 41b43a6ba3
2 changed files with 9 additions and 8 deletions

View File

@@ -59,7 +59,7 @@ static inline void resume_user_mode_work(struct pt_regs *regs)
mem_cgroup_handle_over_high(GFP_KERNEL);
blkcg_maybe_throttle_current();
rseq_handle_notify_resume(NULL, regs);
rseq_handle_notify_resume(regs);
}
#endif /* LINUX_RESUME_USER_MODE_H */

View File

@@ -37,19 +37,20 @@ static inline void rseq_set_notify_resume(struct task_struct *t)
void __rseq_handle_notify_resume(struct ksignal *sig, struct pt_regs *regs);
static inline void rseq_handle_notify_resume(struct ksignal *ksig,
struct pt_regs *regs)
static inline void rseq_handle_notify_resume(struct pt_regs *regs)
{
if (current->rseq)
__rseq_handle_notify_resume(ksig, regs);
__rseq_handle_notify_resume(NULL, regs);
}
static inline void rseq_signal_deliver(struct ksignal *ksig,
struct pt_regs *regs)
{
scoped_guard(RSEQ_EVENT_GUARD)
__set_bit(RSEQ_EVENT_SIGNAL_BIT, &current->rseq_event_mask);
rseq_handle_notify_resume(ksig, regs);
if (current->rseq) {
scoped_guard(RSEQ_EVENT_GUARD)
__set_bit(RSEQ_EVENT_SIGNAL_BIT, &current->rseq_event_mask);
__rseq_handle_notify_resume(ksig, regs);
}
}
/* rseq_preempt() requires preemption to be disabled. */
@@ -103,7 +104,7 @@ static inline void rseq_execve(struct task_struct *t)
#else /* CONFIG_RSEQ */
static inline void rseq_set_notify_resume(struct task_struct *t) { }
static inline void rseq_handle_notify_resume(struct ksignal *ksig, struct pt_regs *regs) { }
static inline void rseq_handle_notify_resume(struct pt_regs *regs) { }
static inline void rseq_signal_deliver(struct ksignal *ksig, struct pt_regs *regs) { }
static inline void rseq_preempt(struct task_struct *t) { }
static inline void rseq_migrate(struct task_struct *t) { }