Lines Matching refs:ksig
366 static int setup_rt_frame(struct ksignal *ksig, sigset_t *set, in setup_rt_frame() argument
385 frame = get_sigframe(&ksig->ka, regs, frame_size); in setup_rt_frame()
395 if (ksig->ka.sa.sa_flags & SA_RESTORER) in setup_rt_frame()
396 restorer = (unsigned long) ksig->ka.sa.sa_restorer; in setup_rt_frame()
401 if (copy_siginfo_to_user(&frame->info, &ksig->info)) in setup_rt_frame()
423 regs->psw.addr = (unsigned long) ksig->ka.sa.sa_handler; in setup_rt_frame()
425 regs->gprs[2] = ksig->sig; in setup_rt_frame()
432 static void handle_signal(struct ksignal *ksig, sigset_t *oldset, in handle_signal() argument
438 if (ksig->ka.sa.sa_flags & SA_SIGINFO) in handle_signal()
439 ret = setup_rt_frame(ksig, oldset, regs); in handle_signal()
441 ret = setup_frame(ksig->sig, &ksig->ka, oldset, regs); in handle_signal()
443 signal_setup_done(ret, ksig, test_thread_flag(TIF_SINGLE_STEP)); in handle_signal()
458 struct ksignal ksig; in arch_do_signal_or_restart() local
469 if (has_signal && get_signal(&ksig)) { in arch_do_signal_or_restart()
480 if (!(ksig.ka.sa.sa_flags & SA_RESTART)) { in arch_do_signal_or_restart()
496 rseq_signal_deliver(&ksig, regs); in arch_do_signal_or_restart()
498 handle_signal32(&ksig, oldset, regs); in arch_do_signal_or_restart()
500 handle_signal(&ksig, oldset, regs); in arch_do_signal_or_restart()