Lines Matching refs:ksig
292 static inline void __user *get_sigframe(struct ksignal *ksig, in get_sigframe() argument
307 sp = sigsp(sp, ksig) - framesize; in get_sigframe()
315 static int setup_rt_frame(struct ksignal *ksig, sigset_t *set, in setup_rt_frame() argument
323 frame = get_sigframe(ksig, regs, frame_size); in setup_rt_frame()
327 err |= copy_siginfo_to_user(&frame->info, &ksig->info); in setup_rt_frame()
365 regs->epc = (unsigned long)ksig->ka.sa.sa_handler; in setup_rt_frame()
367 regs->a0 = ksig->sig; /* a0: signal number */ in setup_rt_frame()
373 current->comm, task_pid_nr(current), ksig->sig, in setup_rt_frame()
380 static void handle_signal(struct ksignal *ksig, struct pt_regs *regs) in handle_signal() argument
385 rseq_signal_deliver(ksig, regs); in handle_signal()
389 ret = compat_setup_rt_frame(ksig, oldset, regs); in handle_signal()
391 ret = setup_rt_frame(ksig, oldset, regs); in handle_signal()
393 signal_setup_done(ret, ksig, 0); in handle_signal()
400 struct ksignal ksig; in arch_do_signal_or_restart() local
431 if (get_signal(&ksig)) { in arch_do_signal_or_restart()
441 !(ksig.ka.sa.sa_flags & SA_RESTART)))) { in arch_do_signal_or_restart()
447 handle_signal(&ksig, regs); in arch_do_signal_or_restart()