| /arch/mips/include/asm/ |
| A D | signal.h | 17 #define sig_uses_siginfo(ka, abi) \ argument 19 ((ka)->sa.sa_flags & SA_SIGINFO)) 21 #define sig_uses_siginfo(ka, abi) \ argument 24 ((ka)->sa.sa_flags & SA_SIGINFO) : 1) )
|
| /arch/x86/kernel/ |
| A D | signal.c | 49 ksig->ka.sa.sa_flags & SA_IA32_ABI; in is_ia32_compat_frame() 60 ksig->ka.sa.sa_flags & SA_X32_ABI; in is_x32_frame() 97 struct k_sigaction *ka = &ksig->ka; in get_sigframe() local 112 if (ka->sa.sa_flags & SA_ONSTACK) { in get_sigframe() 125 !(ka->sa.sa_flags & SA_RESTORER) && in get_sigframe() 126 ka->sa.sa_restorer) { in get_sigframe() 128 sp = (unsigned long) ka->sa.sa_restorer; in get_sigframe() 243 if (ksig->ka.sa.sa_flags & SA_SIGINFO) in setup_rt_frame() 273 if (!(ksig->ka.sa.sa_flags & SA_RESTART)) { in handle_signal()
|
| A D | signal_64.c | 172 if (!(ksig->ka.sa.sa_flags & SA_RESTORER)) in x64_setup_rt_frame() 188 unsafe_put_user(ksig->ka.sa.sa_restorer, &frame->pretcode, Efault); in x64_setup_rt_frame() 193 if (ksig->ka.sa.sa_flags & SA_SIGINFO) { in x64_setup_rt_frame() 210 regs->ip = (unsigned long) ksig->ka.sa.sa_handler; in x64_setup_rt_frame() 313 if (!(ksig->ka.sa.sa_flags & SA_RESTORER)) in x32_setup_rt_frame() 331 restorer = ksig->ka.sa.sa_restorer; in x32_setup_rt_frame() 337 if (ksig->ka.sa.sa_flags & SA_SIGINFO) { in x32_setup_rt_frame() 344 regs->ip = (unsigned long) ksig->ka.sa.sa_handler; in x32_setup_rt_frame()
|
| A D | signal_32.c | 279 if (ksig->ka.sa.sa_flags & SA_RESTORER) { in ia32_setup_frame() 280 restorer = ksig->ka.sa.sa_restorer; in ia32_setup_frame() 306 regs->ip = (unsigned long) ksig->ka.sa.sa_handler; in ia32_setup_frame() 367 if (ksig->ka.sa.sa_flags & SA_RESTORER) in ia32_setup_rt_frame() 368 restorer = ksig->ka.sa.sa_restorer; in ia32_setup_rt_frame() 388 regs->ip = (unsigned long) ksig->ka.sa.sa_handler; in ia32_setup_rt_frame()
|
| /arch/s390/kernel/ |
| A D | signal.c | 277 if (ka->sa.sa_flags & SA_ONSTACK) { in get_sigframe() 285 static int setup_frame(int sig, struct k_sigaction *ka, in setup_frame() argument 302 frame = get_sigframe(ka, regs, frame_size); in setup_frame() 333 if (ka->sa.sa_flags & SA_RESTORER) in setup_frame() 334 restorer = (unsigned long) ka->sa.sa_restorer; in setup_frame() 345 regs->psw.addr = (unsigned long) ka->sa.sa_handler; in setup_frame() 381 frame = get_sigframe(&ksig->ka, regs, frame_size); in setup_rt_frame() 391 if (ksig->ka.sa.sa_flags & SA_RESTORER) in setup_rt_frame() 392 restorer = (unsigned long) ksig->ka.sa.sa_restorer; in setup_rt_frame() 434 if (ksig->ka.sa.sa_flags & SA_SIGINFO) in handle_signal() [all …]
|
| A D | compat_signal.c | 231 get_sigframe(struct k_sigaction *ka, struct pt_regs * regs, size_t frame_size) in get_sigframe() argument 243 if (ka->sa.sa_flags & SA_ONSTACK) { in get_sigframe() 268 frame = get_sigframe(&ksig->ka, regs, frame_size); in setup_frame32() 300 if (ksig->ka.sa.sa_flags & SA_RESTORER) { in setup_frame32() 302 ksig->ka.sa.sa_restorer | PSW32_ADDR_AMODE; in setup_frame32() 314 regs->psw.addr = (__force __u64) ksig->ka.sa.sa_handler; in setup_frame32() 354 frame = get_sigframe(&ksig->ka, regs, frame_size); in setup_rt_frame32() 364 if (ksig->ka.sa.sa_flags & SA_RESTORER) { in setup_rt_frame32() 366 ksig->ka.sa.sa_restorer | PSW32_ADDR_AMODE; in setup_rt_frame32() 394 regs->psw.addr = (__u64 __force) ksig->ka.sa.sa_handler; in setup_rt_frame32() [all …]
|
| /arch/sh/kernel/ |
| A D | signal_32.c | 256 if (ka->sa.sa_flags & SA_ONSTACK) { in get_sigframe() 275 frame = get_sigframe(&ksig->ka, regs->regs[15], sizeof(*frame)); in setup_frame() 288 if (ksig->ka.sa.sa_flags & SA_RESTORER) { in setup_frame() 289 regs->pr = (unsigned long) ksig->ka.sa.sa_restorer; in setup_frame() 319 (struct fdpic_func_descriptor __user *)ksig->ka.sa.sa_handler; in setup_frame() 324 regs->pc = (unsigned long)ksig->ka.sa.sa_handler; in setup_frame() 358 if (ksig->ka.sa.sa_flags & SA_RESTORER) { in setup_rt_frame() 359 regs->pr = (unsigned long) ksig->ka.sa.sa_restorer; in setup_rt_frame() 394 regs->pc = (unsigned long)ksig->ka.sa.sa_handler; in setup_rt_frame() 442 if (ksig->ka.sa.sa_flags & SA_SIGINFO) in handle_signal() [all …]
|
| /arch/um/kernel/ |
| A D | signal.c | 69 if (!(ksig->ka.sa.sa_flags & SA_RESTART)) { in handle_signal() 82 if ((ksig->ka.sa.sa_flags & SA_ONSTACK) && (sas_ss_flags(sp) == 0)) in handle_signal() 86 if (!(ksig->ka.sa.sa_flags & SA_SIGINFO)) in handle_signal()
|
| /arch/x86/um/ |
| A D | signal.c | 247 if (ksig->ka.sa.sa_flags & SA_RESTORER) in setup_signal_stack_sc() 248 restorer = ksig->ka.sa.sa_restorer; in setup_signal_stack_sc() 277 PT_REGS_IP(regs) = (unsigned long) ksig->ka.sa.sa_handler; in setup_signal_stack_sc() 303 if (ksig->ka.sa.sa_flags & SA_RESTORER) in setup_signal_stack_si() 304 restorer = ksig->ka.sa.sa_restorer; in setup_signal_stack_si() 332 PT_REGS_IP(regs) = (unsigned long) ksig->ka.sa.sa_handler; in setup_signal_stack_si() 389 if (ksig->ka.sa.sa_flags & SA_SIGINFO) { in setup_signal_stack_si() 420 if (ksig->ka.sa.sa_flags & SA_RESTORER) in setup_signal_stack_si() 421 err |= __put_user((void __user *)ksig->ka.sa.sa_restorer, in setup_signal_stack_si() 441 PT_REGS_IP(regs) = (unsigned long) ksig->ka.sa.sa_handler; in setup_signal_stack_si()
|
| /arch/parisc/kernel/ |
| A D | signal.c | 161 get_sigframe(struct k_sigaction *ka, unsigned long sp, size_t frame_size) in get_sigframe() argument 167 __func__, (unsigned long)ka, sp, frame_size); in get_sigframe() 171 if ((ka->sa.sa_flags & SA_ONSTACK) != 0 && ! sas_ss_flags(sp)) in get_sigframe() 234 frame = get_sigframe(&ksig->ka, usp, sigframe_size); in setup_rt_frame() 284 haddr = A(ksig->ka.sa.sa_handler); in setup_rt_frame() 389 __func__, ksig->sig, &ksig->ka, &ksig->info, oldset, regs); in handle_signal() 451 syscall_restart(struct pt_regs *regs, struct k_sigaction *ka) in syscall_restart() argument 468 if (!(ka->sa.sa_flags & SA_RESTART)) { in syscall_restart() 563 syscall_restart(regs, &ksig.ka); in do_signal()
|
| /arch/arc/kernel/ |
| A D | signal.c | 296 if (unlikely(ksig->ka.sa.sa_flags & SA_SIGINFO)) { in setup_rt_frame() 321 regs->ret = (unsigned long)ksig->ka.sa.sa_handler; in setup_rt_frame() 327 if(!(ksig->ka.sa.sa_flags & SA_RESTORER)) in setup_rt_frame() 330 regs->blink = (unsigned long)ksig->ka.sa.sa_restorer; in setup_rt_frame() 345 static void arc_restart_syscall(struct k_sigaction *ka, struct pt_regs *regs) in arc_restart_syscall() argument 365 if (!(ka->sa.sa_flags & SA_RESTART)) { in arc_restart_syscall() 412 arc_restart_syscall(&ksig.ka, regs); in do_signal()
|
| /arch/xtensa/kernel/ |
| A D | signal.c | 348 unsigned long handler = (unsigned long)ksig->ka.sa.sa_handler; in setup_frame() 364 if ((ksig->ka.sa.sa_flags & SA_ONSTACK) != 0 && sas_ss_flags(sp) == 0) { in setup_frame() 377 if (ksig->ka.sa.sa_flags & SA_SIGINFO) { in setup_frame() 389 if (ksig->ka.sa.sa_flags & SA_RESTORER) { in setup_frame() 392 (unsigned long __user *)ksig->ka.sa.sa_restorer; in setup_frame() 396 ra = (unsigned long)ksig->ka.sa.sa_restorer; in setup_frame() 475 if (!(ksig.ka.sa.sa_flags & SA_RESTART)) { in do_signal()
|
| /arch/microblaze/kernel/ |
| A D | signal.c | 168 if (ksig->ka.sa.sa_flags & SA_SIGINFO) in setup_rt_frame() 220 regs->pc = (unsigned long)ksig->ka.sa.sa_handler; in setup_rt_frame() 232 handle_restart(struct pt_regs *regs, struct k_sigaction *ka, int has_handler) in handle_restart() argument 242 if (has_handler && !(ka->sa.sa_flags & SA_RESTART)) { in handle_restart() 293 handle_restart(regs, &ksig.ka, 1); in do_signal()
|
| /arch/sparc/kernel/ |
| A D | signal_32.c | 297 regs->pc = (unsigned long) ksig->ka.sa.sa_handler; in setup_frame() 301 if (ksig->ka.ka_restorer) in setup_frame() 302 regs->u_regs[UREG_I7] = (unsigned long)ksig->ka.ka_restorer; in setup_frame() 395 regs->pc = (unsigned long) ksig->ka.sa.sa_handler; in setup_rt_frame() 398 if (ksig->ka.ka_restorer) in setup_rt_frame() 399 regs->u_regs[UREG_I7] = (unsigned long)ksig->ka.ka_restorer; in setup_rt_frame() 423 if (ksig->ka.sa.sa_flags & SA_SIGINFO) in handle_signal() 496 syscall_restart(orig_i0, regs, &ksig.ka.sa); in do_signal()
|
| A D | signal32.c | 463 regs->tpc = (unsigned long) ksig->ka.sa.sa_handler; in setup_frame32() 471 if (ksig->ka.ka_restorer) { in setup_frame32() 472 regs->u_regs[UREG_I7] = (unsigned long)ksig->ka.ka_restorer; in setup_frame32() 595 regs->tpc = (unsigned long) ksig->ka.sa.sa_handler; in setup_rt_frame32() 603 if (ksig->ka.ka_restorer) in setup_rt_frame32() 604 regs->u_regs[UREG_I7] = (unsigned long)ksig->ka.ka_restorer; in setup_rt_frame32() 629 if (ksig->ka.sa.sa_flags & SA_SIGINFO) in handle_signal32() 677 syscall_restart32(orig_i0, regs, &ksig.ka.sa); in do_signal32()
|
| /arch/arm/kernel/ |
| A D | signal.c | 324 unsigned long handler = (unsigned long)ksig->ka.sa.sa_handler; in setup_return() 345 if (ksig->ka.sa.sa_flags & SA_THIRTYTWO) in setup_return() 376 if (ksig->ka.sa.sa_flags & SA_RESTORER) { in setup_return() 377 retcode = (unsigned long)ksig->ka.sa.sa_restorer; in setup_return() 387 if (ksig->ka.sa.sa_flags & SA_SIGINFO) in setup_return() 398 if (ksig->ka.sa.sa_flags & SA_SIGINFO) in setup_return() 515 if (ksig->ka.sa.sa_flags & SA_SIGINFO) in handle_signal() 584 && !(ksig.ka.sa.sa_flags & SA_RESTART))) { in do_signal()
|
| /arch/alpha/kernel/ |
| A D | signal.c | 345 r26 = (unsigned long) ksig->ka.ka_restorer; in setup_frame() 360 regs->r27 = regs->pc = (unsigned long) ksig->ka.sa.sa_handler; in setup_frame() 399 r26 = (unsigned long) ksig->ka.ka_restorer; in setup_rt_frame() 414 regs->r27 = regs->pc = (unsigned long) ksig->ka.sa.sa_handler; in setup_rt_frame() 438 if (ksig->ka.sa.sa_flags & SA_SIGINFO) in handle_signal() 448 struct pt_regs *regs, struct k_sigaction *ka) in syscall_restart() argument 452 if (!(ka->sa.sa_flags & SA_RESTART)) { in syscall_restart() 495 syscall_restart(r0, r19, regs, &ksig.ka); in do_signal()
|
| /arch/powerpc/kernel/ |
| A D | signal.c | 178 static void check_syscall_restart(struct pt_regs *regs, struct k_sigaction *ka, in check_syscall_restart() argument 214 restart = !has_handler || (ka->sa.sa_flags & SA_RESTART) != 0; in check_syscall_restart() 254 check_syscall_restart(tsk->thread.regs, &ksig.ka, ksig.sig > 0); in do_signal() 283 if (ksig.ka.sa.sa_flags & SA_SIGINFO) in do_signal()
|
| /arch/arm64/kernel/ |
| A D | signal32.c | 317 static void compat_setup_return(struct pt_regs *regs, struct k_sigaction *ka, in compat_setup_return() argument 321 compat_ulong_t handler = ptr_to_compat(ka->sa.sa_handler); in compat_setup_return() 340 if (ka->sa.sa_flags & SA_RESTORER) { in compat_setup_return() 341 retcode = ptr_to_compat(ka->sa.sa_restorer); in compat_setup_return() 346 if (ka->sa.sa_flags & SA_SIGINFO) in compat_setup_return() 427 compat_setup_return(regs, &ksig->ka, frame->sig.retcode, frame, usig); in compat_setup_rt_frame() 450 compat_setup_return(regs, &ksig->ka, frame->retcode, frame, usig); in compat_setup_frame()
|
| /arch/openrisc/kernel/ |
| A D | signal.c | 201 if (ksig->ka.sa.sa_flags & SA_SIGINFO) in setup_rt_frame() 230 regs->pc = (unsigned long)ksig->ka.sa.sa_handler; /* what we enter NOW */ in setup_rt_frame() 308 && !(ksig.ka.sa.sa_flags & SA_RESTART))) { in do_signal()
|
| /arch/csky/kernel/ |
| A D | signal.c | 168 regs->pc = (unsigned long)ksig->ka.sa.sa_handler; in setup_rt_frame() 195 if (!(ksig->ka.sa.sa_flags & SA_RESTART)) { in handle_signal()
|
| /arch/nios2/kernel/ |
| A D | signal.c | 190 if (ksig->ka.sa.sa_flags & SA_SIGINFO) in setup_rt_frame() 212 regs->ea = (unsigned long) ksig->ka.sa.sa_handler; in setup_rt_frame() 276 && !(ksig.ka.sa.sa_flags & SA_RESTART))) { in do_signal()
|
| /arch/m68k/kernel/ |
| A D | signal.c | 943 tregs->pc = (unsigned long) ksig->ka.sa.sa_handler; in setup_frame() 1023 tregs->pc = (unsigned long) ksig->ka.sa.sa_handler; in setup_rt_frame() 1029 handle_restart(struct pt_regs *regs, struct k_sigaction *ka, int has_handler) in handle_restart() argument 1048 if (has_handler && !(ka->sa.sa_flags & SA_RESTART)) { in handle_restart() 1072 handle_restart(regs, &ksig->ka, 1); in handle_signal() 1075 if (ksig->ka.sa.sa_flags & SA_SIGINFO) in handle_signal()
|
| /arch/mips/kernel/ |
| A D | signal_o32.c | 146 regs->cp0_epc = regs->regs[25] = (unsigned long) ksig->ka.sa.sa_handler; in setup_frame_32() 232 regs->cp0_epc = regs->regs[25] = (unsigned long) ksig->ka.sa.sa_handler; in setup_rt_frame_32()
|
| /arch/hexagon/kernel/ |
| A D | signal.c | 128 pt_set_elr(regs, (unsigned long)ksig->ka.sa.sa_handler); in setup_rt_frame() 153 if (!(ksig->ka.sa.sa_flags & SA_RESTART)) { in handle_signal()
|