/arch/parisc/kernel/ |
H A D | signal.c | 230 setup_rt_frame(struct ksignal *ksig, sigset_t *set, struct pt_regs *regs, argument 244 frame = get_sigframe(&ksig->ka, usp, sizeof(*frame)); 247 DBG(1,"setup_rt_frame: frame %p info %p\n", frame, ksig->info); 256 err |= copy_siginfo_to_user32(&compat_frame->info, &ksig->info); 268 err |= copy_siginfo_to_user(&frame->info, &ksig->info); 317 haddr = A(ksig->ka.sa.sa_handler); 389 regs->gr[26] = ksig->sig; /* signal number */ 421 handle_signal(struct ksignal *ksig, struct pt_regs *regs, int in_syscall) argument 427 ksig->sig, ksig 541 struct ksignal ksig; local [all...] |
/arch/sh/kernel/ |
H A D | signal_32.c | 265 static int setup_frame(struct ksignal *ksig, sigset_t *set, argument 269 int err = 0, sig = ksig->sig; 272 frame = get_sigframe(&ksig->ka, regs->regs[15], sizeof(*frame)); 291 if (ksig->ka.sa.sa_flags & SA_RESTORER) { 292 regs->pr = (unsigned long) ksig->ka.sa.sa_restorer; 322 (struct fdpic_func_descriptor __user *)ksig->ka.sa.sa_handler; 327 regs->pc = (unsigned long)ksig->ka.sa.sa_handler; 340 static int setup_rt_frame(struct ksignal *ksig, sigset_t *set, argument 344 int err = 0, sig = ksig->sig; 347 frame = get_sigframe(&ksig 450 handle_signal(struct ksignal *ksig, struct pt_regs *regs, unsigned int save_r0) argument 475 struct ksignal ksig; local [all...] |
H A D | signal_64.c | 44 handle_signal(struct ksignal *ksig, struct pt_regs *regs); 84 struct ksignal ksig; local 95 if (get_signal(&ksig)) { 96 handle_syscall_restart(regs, &ksig.ka.sa); 99 handle_signal(&ksig, regs); 377 static int setup_frame(struct ksignal *ksig, sigset_t *set, struct pt_regs *regs) argument 380 int err = 0, sig = ksig->sig; 383 frame = get_sigframe(&ksig->ka, regs->regs[REG_SP], sizeof(*frame)); 410 if (ksig->ka.sa.sa_flags & SA_RESTORER) { 415 ksig 564 handle_signal(struct ksignal *ksig, struct pt_regs *regs) argument [all...] |
/arch/sparc/kernel/ |
H A D | signal_32.c | 190 static inline void __user *get_sigframe(struct ksignal *ksig, struct pt_regs *regs, unsigned long framesize) argument 202 sp = sigsp(sp, ksig) - framesize; 215 static int setup_frame(struct ksignal *ksig, struct pt_regs *regs, argument 234 get_sigframe(ksig, regs, sigframe_size); 282 regs->u_regs[UREG_I0] = ksig->sig; 287 regs->pc = (unsigned long) ksig->ka.sa.sa_handler; 291 if (ksig->ka.ka_restorer) 292 regs->u_regs[UREG_I7] = (unsigned long)ksig->ka.ka_restorer; 310 static int setup_rt_frame(struct ksignal *ksig, struct pt_regs *regs, argument 327 get_sigframe(ksig, reg 408 handle_signal(struct ksignal *ksig, struct pt_regs *regs) argument 447 struct ksignal ksig; local [all...] |
H A D | signal32.c | 318 static void __user *get_sigframe(struct ksignal *ksig, struct pt_regs *regs, unsigned long framesize) argument 333 sp = sigsp(sp, ksig) - framesize; 404 static int setup_frame32(struct ksignal *ksig, struct pt_regs *regs, argument 427 get_sigframe(ksig, regs, sigframe_size); 506 regs->u_regs[UREG_I0] = ksig->sig; 511 regs->tpc = (unsigned long) ksig->ka.sa.sa_handler; 519 if (ksig->ka.ka_restorer) { 520 regs->u_regs[UREG_I7] = (unsigned long)ksig->ka.ka_restorer; 535 static int setup_rt_frame32(struct ksignal *ksig, struct pt_regs *regs, argument 558 get_sigframe(ksig, reg 670 handle_signal32(struct ksignal *ksig, struct pt_regs *regs) argument 711 struct ksignal ksig; local [all...] |
H A D | signal_64.c | 319 static inline void __user *get_sigframe(struct ksignal *ksig, struct pt_regs *regs, unsigned long framesize) argument 331 sp = sigsp(sp, ksig) - framesize; 345 setup_rt_frame(struct ksignal *ksig, struct pt_regs *regs) argument 363 get_sigframe(ksig, regs, sf_size); 409 if (ksig->ka.sa.sa_flags & SA_SIGINFO) 410 err |= copy_siginfo_to_user(&sf->info, &ksig->info); 412 err |= __put_user(ksig->sig, &sf->info.si_signo); 420 regs->u_regs[UREG_I0] = ksig->sig; 430 regs->tpc = (unsigned long) ksig->ka.sa.sa_handler; 437 regs->u_regs[UREG_I7] = (unsigned long)ksig 468 struct ksignal ksig; local 513 signal_setup_done(setup_rt_frame(&ksig, regs), &ksig, 0); local [all...] |
/arch/tile/kernel/ |
H A D | compat_signal.c | 193 int compat_setup_rt_frame(struct ksignal *ksig, sigset_t *set, argument 198 int err = 0, sig = ksig->sig; 201 frame = compat_get_sigframe(&ksig->ka, regs, sizeof(*frame)); 213 if (ksig->ka.sa.sa_flags & SA_SIGINFO) { 215 err |= copy_siginfo_to_user32(&frame->info, &ksig->info); 218 err |= __put_user(ksig->info.si_signo, &frame->info.si_signo); 232 if (ksig->ka.sa.sa_flags & SA_RESTORER) 233 restorer = ptr_to_compat_reg(ksig->ka.sa.sa_restorer); 242 regs->pc = ptr_to_compat_reg(ksig->ka.sa.sa_handler);
|
/arch/alpha/kernel/ |
H A D | signal.c | 275 get_sigframe(struct ksignal *ksig, unsigned long sp, size_t frame_size) argument 277 return (void __user *)((sigsp(sp, ksig) - frame_size) & -32ul); 338 setup_frame(struct ksignal *ksig, sigset_t *set, struct pt_regs *regs) argument 344 frame = get_sigframe(ksig, oldsp, sizeof(*frame)); 354 r26 = (unsigned long) ksig->ka.ka_restorer; 369 regs->r27 = regs->pc = (unsigned long) ksig->ka.sa.sa_handler; 370 regs->r16 = ksig->sig; /* a0: signal number */ 383 setup_rt_frame(struct ksignal *ksig, sigset_t *set, struct pt_regs *regs) argument 389 frame = get_sigframe(ksig, oldsp, sizeof(*frame)); 393 err |= copy_siginfo_to_user(&frame->info, &ksig 442 handle_signal(struct ksignal *ksig, struct pt_regs *regs) argument 496 struct ksignal ksig; local [all...] |
/arch/mips/kernel/ |
H A D | signal.c | 283 void __user *get_sigframe(struct ksignal *ksig, struct pt_regs *regs, argument 298 sp = sigsp(sp, ksig); 429 static int setup_frame(void *sig_return, struct ksignal *ksig, argument 435 frame = get_sigframe(ksig, regs, sizeof(*frame)); 454 regs->regs[ 4] = ksig->sig; 459 regs->cp0_epc = regs->regs[25] = (unsigned long) ksig->ka.sa.sa_handler; 468 static int setup_rt_frame(void *sig_return, struct ksignal *ksig, argument 474 frame = get_sigframe(ksig, regs, sizeof(*frame)); 479 err |= copy_siginfo_to_user(&frame->rs_info, &ksig->info); 501 regs->regs[ 4] = ksig 526 handle_signal(struct ksignal *ksig, struct pt_regs *regs) argument 574 struct ksignal ksig; local [all...] |
H A D | signal_n32.c | 105 static int setup_rt_frame_n32(void *sig_return, struct ksignal *ksig, argument 111 frame = get_sigframe(ksig, regs, sizeof(*frame)); 116 err |= copy_siginfo_to_user32(&frame->rs_info, &ksig->info); 138 regs->regs[ 4] = ksig->sig; 143 regs->cp0_epc = regs->regs[25] = (unsigned long) ksig->ka.sa.sa_handler;
|
H A D | signal32.c | 493 static int setup_frame_32(void *sig_return, struct ksignal *ksig, argument 499 frame = get_sigframe(ksig, regs, sizeof(*frame)); 519 regs->regs[ 4] = ksig->sig; 524 regs->cp0_epc = regs->regs[25] = (unsigned long) ksig->ka.sa.sa_handler; 533 static int setup_rt_frame_32(void *sig_return, struct ksignal *ksig, argument 539 frame = get_sigframe(ksig, regs, sizeof(*frame)); 544 err |= copy_siginfo_to_user32(&frame->rs_info, &ksig->info); 566 regs->regs[ 4] = ksig->sig; 571 regs->cp0_epc = regs->regs[25] = (unsigned long) ksig->ka.sa.sa_handler;
|
/arch/unicore32/kernel/ |
H A D | signal.c | 241 static int setup_frame(struct ksignal *ksig, sigset_t *set, argument 244 struct sigframe __user *frame = get_sigframe(&ksig->ka, regs, sizeof(*frame)); 257 err |= setup_return(regs, &ksig->ka, frame->retcode, frame, 258 ksig->sig); 263 static int setup_rt_frame(struct ksignal *ksig, sigset_t *set, argument 267 get_sigframe(&ksig->ka, regs, sizeof(*frame)); 273 err |= copy_siginfo_to_user(&frame->info, &ksig->info); 280 err |= setup_return(regs, &ksig->ka, frame->sig.retcode, frame, 281 ksig->sig); 304 static void handle_signal(struct ksignal *ksig, struc argument 366 struct ksignal ksig; local [all...] |
/arch/xtensa/kernel/ |
H A D | signal.c | 334 static int setup_frame(struct ksignal *ksig, sigset_t *set, argument 338 int err = 0, sig = ksig->sig; 344 if ((ksig->ka.sa.sa_flags & SA_ONSTACK) != 0 && sas_ss_flags(sp) == 0) { 363 if (ksig->ka.sa.sa_flags & SA_SIGINFO) { 364 err |= copy_siginfo_to_user(&frame->info, &ksig->info); 375 if (ksig->ka.sa.sa_flags & SA_RESTORER) { 376 ra = (unsigned long)ksig->ka.sa.sa_restorer; 396 start_thread(regs, (unsigned long) ksig->ka.sa.sa_handler, 432 struct ksignal ksig; local 436 if (get_signal(&ksig)) { [all...] |
/arch/s390/kernel/ |
H A D | compat_signal.c | 383 static int setup_frame32(struct ksignal *ksig, sigset_t *set, argument 386 int sig = ksig->sig; 401 frame = get_sigframe(&ksig->ka, regs, frame_size); 432 if (ksig->ka.sa.sa_flags & SA_RESTORER) { 434 ksig->ka.sa.sa_restorer | PSW32_ADDR_AMODE; 450 regs->psw.addr = (__force __u64) ksig->ka.sa.sa_handler; 468 static int setup_rt_frame32(struct ksignal *ksig, sigset_t *set, argument 490 frame = get_sigframe(&ksig->ka, regs, frame_size); 500 if (ksig->ka.sa.sa_flags & SA_RESTORER) { 502 ksig 546 handle_signal32(struct ksignal *ksig, sigset_t *oldset, struct pt_regs *regs) argument [all...] |
H A D | signal.c | 404 static int setup_rt_frame(struct ksignal *ksig, sigset_t *set, argument 426 frame = get_sigframe(&ksig->ka, regs, frame_size); 436 if (ksig->ka.sa.sa_flags & SA_RESTORER) { 438 ksig->ka.sa.sa_restorer | PSW_ADDR_AMODE; 447 if (copy_siginfo_to_user(&frame->info, &ksig->info)) 469 regs->psw.addr = (unsigned long) ksig->ka.sa.sa_handler | PSW_ADDR_AMODE; 471 regs->gprs[2] = map_signal(ksig->sig); 478 static void handle_signal(struct ksignal *ksig, sigset_t *oldset, argument 484 if (ksig->ka.sa.sa_flags & SA_SIGINFO) 485 ret = setup_rt_frame(ksig, oldse 503 struct ksignal ksig; local [all...] |
H A D | entry.h | 55 void handle_signal32(struct ksignal *ksig, sigset_t *oldset,
|
/arch/x86/um/ |
H A D | signal.c | 373 int setup_signal_stack_sc(unsigned long stack_top, struct ksignal *ksig, argument 378 int err = 0, sig = ksig->sig; 387 if (ksig->ka.sa.sa_flags & SA_RESTORER) 388 restorer = ksig->ka.sa.sa_restorer; 412 PT_REGS_IP(regs) = (unsigned long) ksig->ka.sa.sa_handler; 419 int setup_signal_stack_si(unsigned long stack_top, struct ksignal *ksig, argument 424 int err = 0, sig = ksig->sig; 432 if (ksig->ka.sa.sa_flags & SA_RESTORER) 433 restorer = ksig->ka.sa.sa_restorer; 439 err |= copy_siginfo_to_user(&frame->info, &ksig 503 setup_signal_stack_si(unsigned long stack_top, struct ksignal *ksig, struct pt_regs *regs, sigset_t *set) argument [all...] |
/arch/ia64/kernel/ |
H A D | signal.c | 316 setup_frame(struct ksignal *ksig, sigset_t *set, struct sigscratch *scr) argument 325 if (ksig->ka.sa.sa_flags & SA_ONSTACK) { 349 return force_sigsegv_info(ksig->sig, (void __user *) 356 return force_sigsegv_info(ksig->sig, frame); 358 err = __put_user(ksig->sig, &frame->arg0); 363 err |= __put_user(ksig->ka.sa.sa_handler, &frame->handler); 365 err |= copy_siginfo_to_user(&frame->info, &ksig->info); 371 return force_sigsegv_info(ksig->sig, frame); 396 current->comm, current->pid, ksig->sig, scr->pt.r12, frame->sc.sc_ip, frame->handler); 402 handle_signal (struct ksignal *ksig, struc argument 421 struct ksignal ksig; local [all...] |
/arch/x86/ia32/ |
H A D | ia32_signal.c | 310 static void __user *get_sigframe(struct ksignal *ksig, struct pt_regs *regs, argument 320 if (ksig->ka.sa.sa_flags & SA_ONSTACK) 321 sp = sigsp(sp, ksig); 324 !(ksig->ka.sa.sa_flags & SA_RESTORER) && 325 ksig->ka.sa.sa_restorer) 326 sp = (unsigned long) ksig->ka.sa.sa_restorer; 345 int ia32_setup_frame(int sig, struct ksignal *ksig, argument 364 frame = get_sigframe(ksig, regs, sizeof(*frame), &fpstate); 381 if (ksig->ka.sa.sa_flags & SA_RESTORER) { 382 restorer = ksig 423 ia32_setup_rt_frame(int sig, struct ksignal *ksig, compat_sigset_t *set, struct pt_regs *regs) argument [all...] |
/arch/m68k/kernel/ |
H A D | signal.c | 838 get_sigframe(struct ksignal *ksig, size_t frame_size) argument 840 unsigned long usp = sigsp(rdusp(), ksig); 845 static int setup_frame(struct ksignal *ksig, sigset_t *set, argument 851 int err = 0, sig = ksig->sig; 861 frame = get_sigframe(ksig, sizeof(*frame) + fsize); 903 regs->pc = (unsigned long) ksig->ka.sa.sa_handler; 931 static int setup_rt_frame(struct ksignal *ksig, sigset_t *set, argument 936 int err = 0, sig = ksig->sig; 946 frame = get_sigframe(ksig, sizeof(*frame)); 959 err |= copy_siginfo_to_user(&frame->info, &ksig 1061 handle_signal(struct ksignal *ksig, struct pt_regs *regs) argument 1091 struct ksignal ksig; local [all...] |
/arch/arm64/kernel/ |
H A D | signal32.c | 416 static void __user *compat_get_sigframe(struct ksignal *ksig, argument 420 compat_ulong_t sp = sigsp(regs->compat_sp, ksig); 526 int compat_setup_rt_frame(int usig, struct ksignal *ksig, argument 532 frame = compat_get_sigframe(ksig, regs, sizeof(*frame)); 537 err |= copy_siginfo_to_user32(&frame->info, &ksig->info); 547 compat_setup_return(regs, &ksig->ka, frame->sig.retcode, frame, usig); 555 int compat_setup_frame(int usig, struct ksignal *ksig, sigset_t *set, argument 561 frame = compat_get_sigframe(ksig, regs, sizeof(*frame)); 570 compat_setup_return(regs, &ksig->ka, frame->retcode, frame, usig);
|
/arch/powerpc/kernel/ |
H A D | signal_64.c | 711 int handle_rt_signal64(struct ksignal *ksig, sigset_t *set, struct pt_regs *regs) argument 717 frame = get_sigframe(ksig, get_tm_stackpointer(regs), sizeof(*frame), 0); 723 err |= copy_siginfo_to_user(&frame->info, &ksig->info); 738 regs, ksig->sig, 740 (unsigned long)ksig->ka.sa.sa_handler); 745 err |= setup_sigcontext(&frame->uc.uc_mcontext, regs, ksig->sig, 746 NULL, (unsigned long)ksig->ka.sa.sa_handler, 772 regs->nip = (unsigned long) ksig->ka.sa.sa_handler; 781 (func_descr_t __user *) ksig->ka.sa.sa_handler; 791 regs->gpr[3] = ksig [all...] |
H A D | signal_32.c | 984 int handle_rt_signal32(struct ksignal *ksig, sigset_t *oldset, argument 997 rt_sf = get_sigframe(ksig, get_tm_stackpointer(regs), sizeof(*rt_sf), 1); 1003 if (copy_siginfo_to_user(&rt_sf->info, &ksig->info) 1053 regs->gpr[3] = ksig->sig; 1057 regs->nip = (unsigned long) ksig->ka.sa.sa_handler; 1410 int handle_signal32(struct ksignal *ksig, sigset_t *oldset, struct pt_regs *regs) argument 1420 frame = get_sigframe(ksig, get_tm_stackpointer(regs), sizeof(*frame), 1); 1428 if (__put_user(to_user_ptr(ksig->ka.sa.sa_handler), &sc->handler) 1436 || __put_user(ksig->sig, &sc->signal)) 1471 regs->gpr[3] = ksig [all...] |
/arch/x86/include/asm/ |
H A D | fpu-internal.h | 30 int ia32_setup_rt_frame(int sig, struct ksignal *ksig, 32 int ia32_setup_frame(int sig, struct ksignal *ksig,
|
/arch/tile/include/asm/ |
H A D | compat.h | 270 extern int compat_setup_rt_frame(struct ksignal *ksig, sigset_t *set,
|