/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 | entry.h | 55 void handle_signal32(struct ksignal *ksig, sigset_t *oldset,
|
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...] |
/arch/score/kernel/ |
H A D | signal.c | 176 static int setup_rt_frame(struct ksignal *ksig, struct pt_regs *regs, argument 182 frame = get_sigframe(&ksig->ka, regs, sizeof(*frame)); 197 err |= copy_siginfo_to_user(&frame->rs_info, &ksig->info); 209 regs->regs[4] = ksig->sig; 212 regs->regs[29] = (unsigned long) ksig->ka.sa.sa_handler; 213 regs->cp0_epc = (unsigned long) ksig->ka.sa.sa_handler; 218 static void handle_signal(struct ksignal *ksig, struct pt_regs *regs) argument 229 if (!(ksig->ka.sa.sa_flags & SA_RESTART)) { 245 ret = setup_rt_frame(ksig, regs, sigmask_to_save()); 247 signal_setup_done(ret, ksig, 252 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 | 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_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 | 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/include/asm/ |
H A D | compat.h | 270 extern int compat_setup_rt_frame(struct ksignal *ksig, sigset_t *set,
|
/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);
|
H A D | signal.c | 156 static int setup_rt_frame(struct ksignal *ksig, sigset_t *set, argument 161 int err = 0, sig = ksig->sig; 164 frame = get_sigframe(&ksig->ka, regs, sizeof(*frame)); 176 if (ksig->ka.sa.sa_flags & SA_SIGINFO) { 178 err |= copy_siginfo_to_user(&frame->info, &ksig->info); 181 err |= __put_user(ksig->info.si_signo, &frame->info.si_signo); 195 if (ksig->ka.sa.sa_flags & SA_RESTORER) 196 restorer = (unsigned long) ksig->ka.sa.sa_restorer; 205 regs->pc = (unsigned long) ksig->ka.sa.sa_handler; 225 static void handle_signal(struct ksignal *ksig, struc argument 271 struct ksignal ksig; local [all...] |
/arch/um/include/shared/ |
H A D | frame_kern.h | 9 extern int setup_signal_stack_sc(unsigned long stack_top, struct ksignal *ksig, 11 extern int setup_signal_stack_si(unsigned long stack_top, struct ksignal *ksig,
|
/arch/um/kernel/ |
H A D | signal.c | 21 static void handle_signal(struct ksignal *ksig, struct pt_regs *regs) argument 41 if (!(ksig->ka.sa.sa_flags & SA_RESTART)) { 54 if ((ksig->ka.sa.sa_flags & SA_ONSTACK) && (sas_ss_flags(sp) == 0)) 58 if (!(ksig->ka.sa.sa_flags & SA_SIGINFO)) 59 err = setup_signal_stack_sc(sp, ksig, regs, oldset); 62 err = setup_signal_stack_si(sp, ksig, regs, oldset); 64 signal_setup_done(err, ksig, singlestep); 69 struct ksignal ksig; local 72 while (get_signal(&ksig)) { 75 handle_signal(&ksig, reg [all...] |
/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/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/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/x86/kernel/ |
H A D | signal.c | 275 __setup_frame(int sig, struct ksignal *ksig, sigset_t *set, argument 283 frame = get_sigframe(&ksig->ka, regs, sizeof(*frame), &fpstate); 305 if (ksig->ka.sa.sa_flags & SA_RESTORER) 306 restorer = ksig->ka.sa.sa_restorer; 325 regs->ip = (unsigned long)ksig->ka.sa.sa_handler; 338 static int __setup_rt_frame(int sig, struct ksignal *ksig, argument 346 frame = get_sigframe(&ksig->ka, regs, sizeof(*frame), &fpstate); 367 if (ksig->ka.sa.sa_flags & SA_RESTORER) 368 restorer = ksig->ka.sa.sa_restorer; 381 err |= copy_siginfo_to_user(&frame->info, &ksig 404 __setup_rt_frame(int sig, struct ksignal *ksig, sigset_t *set, struct pt_regs *regs) argument 468 x32_setup_rt_frame(struct ksignal *ksig, compat_sigset_t *set, struct pt_regs *regs) argument 610 setup_rt_frame(struct ksignal *ksig, struct pt_regs *regs) argument 630 handle_signal(struct ksignal *ksig, struct pt_regs *regs) argument 701 struct ksignal ksig; local [all...] |
/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/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/blackfin/kernel/ |
H A D | signal.c | 138 static inline void *get_sigframe(struct ksignal *ksig, argument 141 unsigned long usp = sigsp(rdusp(), ksig); 147 setup_rt_frame(struct ksignal *ksig, sigset_t *set, struct pt_regs *regs) argument 152 frame = get_sigframe(ksig, sizeof(*frame)); 156 && ksig->sig < 32 158 signal_invmap[ksig->sig] : ksig->sig), &frame->sig); 162 err |= copy_siginfo_to_user(&frame->info, &ksig->info); 177 (struct fdpic_func_descriptor *) ksig->ka.sa.sa_handler; 186 regs->pc = (unsigned long)ksig 231 handle_signal(struct ksignal *ksig, struct pt_regs *regs) argument 257 struct ksignal ksig; local [all...] |
/arch/c6x/kernel/ |
H A D | signal.c | 130 static inline void __user *get_sigframe(struct ksignal *ksig, argument 134 unsigned long sp = sigsp(regs->sp, ksig); 143 static int setup_rt_frame(struct ksignal *ksig, sigset_t *set, argument 150 frame = get_sigframe(ksig, regs, sizeof(*frame)); 157 err |= copy_siginfo_to_user(&frame->info, &ksig->info); 195 regs->pc = (unsigned long) ksig->ka.sa.sa_handler; 198 regs->a4 = ksig->sig; 238 static void handle_signal(struct ksignal *ksig, struct pt_regs *regs, argument 253 if (!(ksig->ka.sa.sa_flags & SA_RESTART)) { 266 ret = setup_rt_frame(ksig, sigmask_to_sav 275 struct ksignal ksig; local [all...] |
/arch/cris/arch-v10/kernel/ |
H A D | signal.c | 206 get_sigframe(struct ksignal *ksig, size_t frame_size) argument 208 unsigned long sp = sigsp(rdusp(), ksig); 225 static int setup_frame(struct ksignal *ksig, sigset_t *set, argument 232 frame = get_sigframe(ksig, sizeof(*frame)); 250 if (ksig->ka.sa.sa_flags & SA_RESTORER) { 251 return_ip = (unsigned long)ksig->ka.sa.sa_restorer; 266 regs->irp = (unsigned long) ksig->ka.sa.sa_handler; /* what we enter NOW */ 268 regs->r10 = ksig->sig; /* first argument is signo */ 277 static int setup_rt_frame(struct ksignal *ksig, sigset_t *set, argument 284 frame = get_sigframe(ksig, sizeo 349 handle_signal(int canrestart, struct ksignal *ksig, struct pt_regs *regs) argument 406 struct ksignal ksig; local [all...] |
/arch/cris/arch-v32/kernel/ |
H A D | signal.c | 192 get_sigframe(struct ksignal *ksig, size_t frame_size) argument 194 unsigned long sp = sigsp(rdusp(), ksig); 210 setup_frame(struct ksignal *ksig, sigset_t *set, struct pt_regs *regs) argument 217 frame = get_sigframe(ksig, sizeof(*frame)); 239 if (ksig->ka.sa.sa_flags & SA_RESTORER) { 240 return_ip = (unsigned long)ksig->ka.sa.sa_restorer; 267 regs->erp = (unsigned long) ksig->ka.sa.sa_handler; 269 regs->r10 = ksig->sig; 278 setup_rt_frame(struct ksignal *ksig, sigset_t *set, struct pt_regs *regs) argument 285 frame = get_sigframe(ksig, sizeo 359 handle_signal(int canrestart, struct ksignal *ksig, struct pt_regs *regs) argument 428 struct ksignal ksig; local [all...] |
/arch/frv/kernel/ |
H A D | signal.c | 161 static inline void __user *get_sigframe(struct ksignal *ksig, argument 164 unsigned long sp = sigsp(__frame->sp, ksig); 174 static int setup_frame(struct ksignal *ksig, sigset_t *set) argument 177 int rsig, sig = ksig->sig; 181 frame = get_sigframe(ksig, sizeof(*frame)); 206 if (ksig->ka.sa.sa_flags & SA_RESTORER) { 207 if (__put_user(ksig->ka.sa.sa_restorer, &frame->pretcode) < 0) 227 (struct fdpic_func_descriptor __user *) ksig->ka.sa.sa_handler; 234 __frame->pc = (unsigned long) ksig->ka.sa.sa_handler; 255 static int setup_rt_frame(struct ksignal *ksig, sigset_ argument 345 handle_signal(struct ksignal *ksig) argument 390 struct ksignal ksig; local [all...] |