Lines Matching refs:ka
279 get_sigframe(struct k_sigaction *ka, struct pt_regs *regs, int framesize)
286 if ((ka->sa.sa_flags & SA_ONSTACK) && !sas_ss_flags(sp))
296 setup_return(struct pt_regs *regs, struct k_sigaction *ka,
299 unsigned long handler = (unsigned long)ka->sa.sa_handler;
302 if (ka->sa.sa_flags & SA_RESTORER) {
303 retcode = (unsigned long)ka->sa.sa_restorer;
306 if (__put_user((ka->sa.sa_flags & SA_SIGINFO)?SWI_SYS_RT_SIGRETURN:SWI_SYS_SIGRETURN, rc))
321 setup_frame(int usig, struct k_sigaction *ka, sigset_t *set, struct pt_regs *regs)
323 struct sigframe *frame = get_sigframe(ka, regs, sizeof(*frame));
337 err = setup_return(regs, ka, &frame->retcode, frame, usig);
343 setup_rt_frame(int usig, struct k_sigaction *ka, siginfo_t *info,
346 struct rt_sigframe *frame = get_sigframe(ka, regs, sizeof(*frame));
364 err = setup_return(regs, ka, &frame->retcode, frame, usig);
394 struct k_sigaction *ka = &tsk->sighand->action[sig-1];
410 if (!(ka->sa.sa_flags & SA_RESTART)) {
429 if (ka->sa.sa_flags & SA_SIGINFO)
430 ret = setup_rt_frame(usig, ka, info, oldset, regs);
432 ret = setup_frame(usig, ka, oldset, regs);
440 if (ka->sa.sa_flags & SA_ONESHOT)
441 ka->sa.sa_handler = SIG_DFL;
445 &ka->sa.sa_mask);
446 if (!(ka->sa.sa_flags & SA_NODEFER))
469 struct k_sigaction ka;
483 signr = get_signal_to_deliver(&info, &ka, regs, NULL);