Commit 41b43a6b authored by Thomas Gleixner's avatar Thomas Gleixner Committed by Ingo Molnar
Browse files

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: default avatarThomas Gleixner <tglx@linutronix.de>
Signed-off-by: default avatarPeter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
Reviewed-by: default avatarMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Link: https://patch.msgid.link/20251027084306.211520245@linutronix.de
parent 77f19e4d
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -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 */
+8 −7
Original line number Diff line number Diff line
@@ -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)
{
	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_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) { }