/arch/mips/include/asm/ |
D | signal.h | 16 #define sig_uses_siginfo(ka) ((ka)->sa.sa_flags & SA_SIGINFO) argument 18 #define sig_uses_siginfo(ka) (1) argument
|
/arch/x86/kernel/ |
D | signal.c | 202 get_sigframe(struct k_sigaction *ka, struct pt_regs *regs, size_t frame_size, in get_sigframe() argument 218 if (ka->sa.sa_flags & SA_ONSTACK) { in get_sigframe() 223 !(ka->sa.sa_flags & SA_RESTORER) && in get_sigframe() 224 ka->sa.sa_restorer) { in get_sigframe() 226 sp = (unsigned long) ka->sa.sa_restorer; in get_sigframe() 285 frame = get_sigframe(&ksig->ka, regs, sizeof(*frame), &fpstate); in __setup_frame() 307 if (ksig->ka.sa.sa_flags & SA_RESTORER) in __setup_frame() 308 restorer = ksig->ka.sa.sa_restorer; in __setup_frame() 327 regs->ip = (unsigned long)ksig->ka.sa.sa_handler; in __setup_frame() 348 frame = get_sigframe(&ksig->ka, regs, sizeof(*frame), &fpstate); in __setup_rt_frame() [all …]
|
/arch/h8300/kernel/ |
D | signal.c | 170 if (ksig->ka.sa.sa_flags & SA_SIGINFO) in setup_rt_frame() 184 if (ksig->ka.sa.sa_flags & SA_RESTORER) in setup_rt_frame() 185 ret = (unsigned char *)(ksig->ka.sa.sa_restorer); in setup_rt_frame() 200 regs->pc = (unsigned long) ksig->ka.sa.sa_handler; in setup_rt_frame() 210 handle_restart(struct pt_regs *regs, struct k_sigaction *ka) in handle_restart() argument 214 if (!ka) in handle_restart() 219 if (!ka) { in handle_restart() 226 if (!(ka->sa.sa_flags & SA_RESTART)) { in handle_restart() 249 handle_restart(regs, &ksig->ka); in handle_signal()
|
/arch/s390/kernel/ |
D | signal.c | 265 get_sigframe(struct k_sigaction *ka, struct pt_regs * regs, size_t frame_size) in get_sigframe() argument 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 | PSW_ADDR_AMODE; in setup_frame() 350 regs->psw.addr = (unsigned long) ka->sa.sa_handler | PSW_ADDR_AMODE; in setup_frame() 386 frame = get_sigframe(&ksig->ka, regs, frame_size); in setup_rt_frame() 396 if (ksig->ka.sa.sa_flags & SA_RESTORER) { in setup_rt_frame() 398 ksig->ka.sa.sa_restorer | PSW_ADDR_AMODE; in setup_rt_frame() [all …]
|
D | compat_signal.c | 350 get_sigframe(struct k_sigaction *ka, struct pt_regs * regs, size_t frame_size) in get_sigframe() argument 362 if (ka->sa.sa_flags & SA_ONSTACK) { in get_sigframe() 388 frame = get_sigframe(&ksig->ka, regs, frame_size); in setup_frame32() 419 if (ksig->ka.sa.sa_flags & SA_RESTORER) { in setup_frame32() 421 ksig->ka.sa.sa_restorer | PSW32_ADDR_AMODE; in setup_frame32() 437 regs->psw.addr = (__force __u64) ksig->ka.sa.sa_handler; in setup_frame32() 477 frame = get_sigframe(&ksig->ka, regs, frame_size); in setup_rt_frame32() 487 if (ksig->ka.sa.sa_flags & SA_RESTORER) { in setup_rt_frame32() 489 ksig->ka.sa.sa_restorer | PSW32_ADDR_AMODE; in setup_rt_frame32() 521 regs->psw.addr = (__u64 __force) ksig->ka.sa.sa_handler; in setup_rt_frame32() [all …]
|
/arch/frv/kernel/ |
D | signal.c | 198 if (ksig->ka.sa.sa_flags & SA_RESTORER) { in setup_frame() 199 if (__put_user(ksig->ka.sa.sa_restorer, &frame->pretcode) < 0) in setup_frame() 219 (struct fdpic_func_descriptor __user *) ksig->ka.sa.sa_handler; in setup_frame() 226 __frame->pc = (unsigned long) ksig->ka.sa.sa_handler; in setup_frame() 279 if (ksig->ka.sa.sa_flags & SA_RESTORER) { in setup_rt_frame() 280 if (__put_user(ksig->ka.sa.sa_restorer, &frame->pretcode)) in setup_rt_frame() 300 (struct fdpic_func_descriptor __user *) ksig->ka.sa.sa_handler; in setup_rt_frame() 307 __frame->pc = (unsigned long) ksig->ka.sa.sa_handler; in setup_rt_frame() 344 if (!(ksig->ka.sa.sa_flags & SA_RESTART)) { in handle_signal() 358 if (ksig->ka.sa.sa_flags & SA_SIGINFO) in handle_signal()
|
/arch/sh/kernel/ |
D | signal_32.c | 250 get_sigframe(struct k_sigaction *ka, unsigned long sp, size_t frame_size) in get_sigframe() argument 252 if (ka->sa.sa_flags & SA_ONSTACK) { in get_sigframe() 271 frame = get_sigframe(&ksig->ka, regs->regs[15], sizeof(*frame)); in setup_frame() 284 if (ksig->ka.sa.sa_flags & SA_RESTORER) { in setup_frame() 285 regs->pr = (unsigned long) ksig->ka.sa.sa_restorer; in setup_frame() 315 (struct fdpic_func_descriptor __user *)ksig->ka.sa.sa_handler; in setup_frame() 320 regs->pc = (unsigned long)ksig->ka.sa.sa_handler; in setup_frame() 337 frame = get_sigframe(&ksig->ka, regs->regs[15], sizeof(*frame)); in setup_rt_frame() 354 if (ksig->ka.sa.sa_flags & SA_RESTORER) { in setup_rt_frame() 355 regs->pr = (unsigned long) ksig->ka.sa.sa_restorer; in setup_rt_frame() [all …]
|
D | signal_64.c | 96 handle_syscall_restart(regs, &ksig.ka.sa); in do_signal() 366 get_sigframe(struct k_sigaction *ka, unsigned long sp, size_t frame_size) in get_sigframe() argument 368 if ((ka->sa.sa_flags & SA_ONSTACK) != 0 && ! sas_ss_flags(sp)) in get_sigframe() 383 frame = get_sigframe(&ksig->ka, regs->regs[REG_SP], sizeof(*frame)); in setup_frame() 404 if (ksig->ka.sa.sa_flags & SA_RESTORER) { in setup_frame() 409 ksig->ka->sa.sa_restorer | 0x1); in setup_frame() 452 regs->pc = neff_sign_extend((unsigned long)ksig->ka.sa.sa_handler); in setup_frame() 469 frame = get_sigframe(&ksig->ka, regs->regs[REG_SP], sizeof(*frame)); in setup_rt_frame() 496 if (ksig->ka.sa.sa_flags & SA_RESTORER) { in setup_rt_frame() 501 ksig->ka.sa.sa_restorer | 0x1); in setup_rt_frame() [all …]
|
/arch/cris/arch-v10/kernel/ |
D | signal.c | 250 if (ksig->ka.sa.sa_flags & SA_RESTORER) { in setup_frame() 251 return_ip = (unsigned long)ksig->ka.sa.sa_restorer; in setup_frame() 266 regs->irp = (unsigned long) ksig->ka.sa.sa_handler; /* what we enter NOW */ in setup_frame() 309 if (ksig->ka.sa.sa_flags & SA_RESTORER) { in setup_rt_frame() 310 return_ip = (unsigned long)ksig->ka.sa.sa_restorer; in setup_rt_frame() 327 regs->irp = (unsigned long) ksig->ka.sa.sa_handler; in setup_rt_frame() 369 if (!(ksig->ka.sa.sa_flags & SA_RESTART)) { in handle_signal() 382 if (ksig->ka.sa.sa_flags & SA_SIGINFO) in handle_signal()
|
/arch/powerpc/kernel/ |
D | signal.c | 51 static void check_syscall_restart(struct pt_regs *regs, struct k_sigaction *ka, in check_syscall_restart() argument 78 restart = !has_handler || (ka->sa.sa_flags & SA_RESTART) != 0; in check_syscall_restart() 112 check_syscall_restart(regs, &ksig.ka, ksig.sig > 0); in do_signal() 135 if (ksig.ka.sa.sa_flags & SA_SIGINFO) in do_signal()
|
/arch/tile/kernel/ |
D | compat_signal.c | 158 static inline void __user *compat_get_sigframe(struct k_sigaction *ka, in compat_get_sigframe() argument 176 if (ka->sa.sa_flags & SA_ONSTACK) { in compat_get_sigframe() 197 frame = compat_get_sigframe(&ksig->ka, regs, sizeof(*frame)); in compat_setup_rt_frame() 203 if (ksig->ka.sa.sa_flags & SA_SIGINFO) { in compat_setup_rt_frame() 222 if (ksig->ka.sa.sa_flags & SA_RESTORER) in compat_setup_rt_frame() 223 restorer = ptr_to_compat_reg(ksig->ka.sa.sa_restorer); in compat_setup_rt_frame() 232 regs->pc = ptr_to_compat_reg(ksig->ka.sa.sa_handler); in compat_setup_rt_frame()
|
D | signal.c | 116 static inline void __user *get_sigframe(struct k_sigaction *ka, in get_sigframe() argument 134 if (ka->sa.sa_flags & SA_ONSTACK) { in get_sigframe() 155 frame = get_sigframe(&ksig->ka, regs, sizeof(*frame)); in setup_rt_frame() 161 if (ksig->ka.sa.sa_flags & SA_SIGINFO) { in setup_rt_frame() 180 if (ksig->ka.sa.sa_flags & SA_RESTORER) in setup_rt_frame() 181 restorer = (unsigned long) ksig->ka.sa.sa_restorer; in setup_rt_frame() 190 regs->pc = (unsigned long) ksig->ka.sa.sa_handler; in setup_rt_frame() 225 if (!(ksig->ka.sa.sa_flags & SA_RESTART)) { in handle_signal()
|
/arch/um/kernel/ |
D | signal.c | 41 if (!(ksig->ka.sa.sa_flags & SA_RESTART)) { in handle_signal() 54 if ((ksig->ka.sa.sa_flags & SA_ONSTACK) && (sas_ss_flags(sp) == 0)) in handle_signal() 58 if (!(ksig->ka.sa.sa_flags & SA_SIGINFO)) in handle_signal()
|
/arch/x86/ia32/ |
D | ia32_signal.c | 230 if (ksig->ka.sa.sa_flags & SA_ONSTACK) in get_sigframe() 234 !(ksig->ka.sa.sa_flags & SA_RESTORER) && in get_sigframe() 235 ksig->ka.sa.sa_restorer) in get_sigframe() 236 sp = (unsigned long) ksig->ka.sa.sa_restorer; in get_sigframe() 291 if (ksig->ka.sa.sa_flags & SA_RESTORER) { in ia32_setup_frame() 292 restorer = ksig->ka.sa.sa_restorer; in ia32_setup_frame() 317 regs->ip = (unsigned long) ksig->ka.sa.sa_handler; in ia32_setup_frame() 372 if (ksig->ka.sa.sa_flags & SA_RESTORER) in ia32_setup_rt_frame() 373 restorer = ksig->ka.sa.sa_restorer; in ia32_setup_rt_frame() 396 regs->ip = (unsigned long) ksig->ka.sa.sa_handler; in ia32_setup_rt_frame()
|
/arch/cris/arch-v32/kernel/ |
D | signal.c | 241 if (ksig->ka.sa.sa_flags & SA_RESTORER) { in setup_frame() 242 return_ip = (unsigned long)ksig->ka.sa.sa_restorer; in setup_frame() 269 regs->erp = (unsigned long) ksig->ka.sa.sa_handler; in setup_frame() 312 if (ksig->ka.sa.sa_flags & SA_RESTORER) { in setup_rt_frame() 313 return_ip = (unsigned long) ksig->ka.sa.sa_restorer; in setup_rt_frame() 345 regs->erp = (unsigned long) ksig->ka.sa.sa_handler; in setup_rt_frame() 387 if (!(ksig->ka.sa.sa_flags & SA_RESTART)) { in handle_signal() 406 if (ksig->ka.sa.sa_flags & SA_SIGINFO) in handle_signal()
|
/arch/arc/kernel/ |
D | signal.c | 252 if (unlikely(ksig->ka.sa.sa_flags & SA_SIGINFO)) { in setup_rt_frame() 277 regs->ret = (unsigned long)ksig->ka.sa.sa_handler; in setup_rt_frame() 283 if(!(ksig->ka.sa.sa_flags & SA_RESTORER)) in setup_rt_frame() 286 regs->blink = (unsigned long)ksig->ka.sa.sa_restorer; in setup_rt_frame() 301 static void arc_restart_syscall(struct k_sigaction *ka, struct pt_regs *regs) in arc_restart_syscall() argument 321 if (!(ka->sa.sa_flags & SA_RESTART)) { in arc_restart_syscall() 368 arc_restart_syscall(&ksig.ka, regs); in do_signal()
|
/arch/arm64/kernel/ |
D | signal.c | 232 static void setup_return(struct pt_regs *regs, struct k_sigaction *ka, in setup_return() argument 240 regs->pc = (unsigned long)ka->sa.sa_handler; in setup_return() 242 if (ka->sa.sa_flags & SA_RESTORER) in setup_return() 243 sigtramp = ka->sa.sa_restorer; in setup_return() 266 setup_return(regs, &ksig->ka, frame, usig); in setup_rt_frame() 267 if (ksig->ka.sa.sa_flags & SA_SIGINFO) { in setup_rt_frame() 299 if (ksig->ka.sa.sa_flags & SA_SIGINFO) in handle_signal() 380 !(ksig.ka.sa.sa_flags & SA_RESTART)))) { in do_signal()
|
/arch/mn10300/kernel/ |
D | signal.c | 227 if (ksig->ka.sa.sa_flags & SA_RESTORER) { in setup_frame() 228 if (__put_user(ksig->ka.sa.sa_restorer, &frame->pretcode)) in setup_frame() 247 regs->pc = (unsigned long) ksig->ka.sa.sa_handler; in setup_frame() 291 if (ksig->ka.sa.sa_flags & SA_RESTORER) { in setup_rt_frame() 292 if (__put_user(ksig->ka.sa.sa_restorer, &frame->pretcode)) in setup_rt_frame() 313 regs->pc = (unsigned long) ksig->ka.sa.sa_handler; in setup_rt_frame() 350 if (!(ksig->ka.sa.sa_flags & SA_RESTART)) { in handle_signal() 363 if (ksig->ka.sa.sa_flags & SA_SIGINFO) in handle_signal()
|
/arch/score/kernel/ |
D | signal.c | 120 static void __user *get_sigframe(struct k_sigaction *ka, in get_sigframe() argument 130 if ((ka->sa.sa_flags & SA_ONSTACK) && (!on_sig_stack(sp))) in get_sigframe() 182 frame = get_sigframe(&ksig->ka, regs, sizeof(*frame)); in setup_rt_frame() 212 regs->regs[29] = (unsigned long) ksig->ka.sa.sa_handler; in setup_rt_frame() 213 regs->cp0_epc = (unsigned long) ksig->ka.sa.sa_handler; in setup_rt_frame() 229 if (!(ksig->ka.sa.sa_flags & SA_RESTART)) { in handle_signal()
|
/arch/avr32/kernel/ |
D | signal.c | 179 if (ksig->ka.sa.sa_flags & SA_RESTORER) in setup_rt_frame() 180 regs->lr = (unsigned long)ksig->ka.sa.sa_restorer; in setup_rt_frame() 189 regs->pc, ksig->ka.sa.sa_handler, regs->lr); in setup_rt_frame() 191 regs->pc = (unsigned long)ksig->ka.sa.sa_handler; in setup_rt_frame() 255 if (ksig.sig > 0 && !(ksig.ka.sa.sa_flags & SA_RESTART)) { in do_signal()
|
/arch/unicore32/kernel/ |
D | signal.c | 188 static inline void __user *get_sigframe(struct k_sigaction *ka, in get_sigframe() argument 197 if ((ka->sa.sa_flags & SA_ONSTACK) && !sas_ss_flags(sp)) in get_sigframe() 214 static int setup_return(struct pt_regs *regs, struct k_sigaction *ka, in setup_return() argument 217 unsigned long handler = (unsigned long)ka->sa.sa_handler; in setup_return() 223 if (ka->sa.sa_flags & SA_SIGINFO) in setup_return() 244 struct sigframe __user *frame = get_sigframe(&ksig->ka, regs, sizeof(*frame)); in setup_frame() 257 err |= setup_return(regs, &ksig->ka, frame->retcode, frame, in setup_frame() 267 get_sigframe(&ksig->ka, regs, sizeof(*frame)); in setup_rt_frame() 280 err |= setup_return(regs, &ksig->ka, frame->sig.retcode, frame, in setup_rt_frame() 322 if (!(ksig->ka.sa.sa_flags & SA_RESTART)) { in handle_signal() [all …]
|
/arch/parisc/kernel/ |
D | signal.c | 177 get_sigframe(struct k_sigaction *ka, unsigned long sp, size_t frame_size) in get_sigframe() argument 183 (unsigned long)ka, sp, frame_size); in get_sigframe() 187 if ((ka->sa.sa_flags & SA_ONSTACK) != 0 && ! sas_ss_flags(sp)) in get_sigframe() 249 frame = get_sigframe(&ksig->ka, usp, sizeof(*frame)); in setup_rt_frame() 322 haddr = A(ksig->ka.sa.sa_handler); in setup_rt_frame() 432 ksig->sig, ksig->ka, ksig->info, oldset, regs); in handle_signal() 494 syscall_restart(struct pt_regs *regs, struct k_sigaction *ka) in syscall_restart() argument 508 if (!(ka->sa.sa_flags & SA_RESTART)) { in syscall_restart() 596 syscall_restart(regs, &ksig.ka); in do_signal()
|
/arch/x86/um/ |
D | signal.c | 387 if (ksig->ka.sa.sa_flags & SA_RESTORER) in setup_signal_stack_sc() 388 restorer = ksig->ka.sa.sa_restorer; in setup_signal_stack_sc() 412 PT_REGS_IP(regs) = (unsigned long) ksig->ka.sa.sa_handler; in setup_signal_stack_sc() 432 if (ksig->ka.sa.sa_flags & SA_RESTORER) in setup_signal_stack_si() 433 restorer = ksig->ka.sa.sa_restorer; in setup_signal_stack_si() 458 PT_REGS_IP(regs) = (unsigned long) ksig->ka.sa.sa_handler; in setup_signal_stack_si() 516 if (ksig->ka.sa.sa_flags & SA_SIGINFO) { in setup_signal_stack_si() 545 if (ksig->ka.sa.sa_flags & SA_RESTORER) in setup_signal_stack_si() 546 err |= __put_user((void *)ksig->ka.sa.sa_restorer, in setup_signal_stack_si() 566 PT_REGS_IP(regs) = (unsigned long) ksig->ka.sa.sa_handler; in setup_signal_stack_si()
|
/arch/xtensa/kernel/ |
D | signal.c | 343 if ((ksig->ka.sa.sa_flags & SA_ONSTACK) != 0 && sas_ss_flags(sp) == 0) { in setup_frame() 356 if (ksig->ka.sa.sa_flags & SA_SIGINFO) { in setup_frame() 368 if (ksig->ka.sa.sa_flags & SA_RESTORER) { in setup_frame() 369 ra = (unsigned long)ksig->ka.sa.sa_restorer; in setup_frame() 389 start_thread(regs, (unsigned long) ksig->ka.sa.sa_handler, in setup_frame() 440 if (!(ksig.ka.sa.sa_flags & SA_RESTART)) { in do_signal()
|
/arch/blackfin/kernel/ |
D | signal.c | 173 (struct fdpic_func_descriptor *) ksig->ka.sa.sa_handler; in setup_rt_frame() 182 regs->pc = (unsigned long)ksig->ka.sa.sa_handler; in setup_rt_frame() 194 handle_restart(struct pt_regs *regs, struct k_sigaction *ka, int has_handler) in handle_restart() argument 204 if (has_handler && !(ka->sa.sa_flags & SA_RESTART)) { in handle_restart() 234 handle_restart(regs, &ksig->ka, 1); in handle_signal()
|