Lines Matching refs:sf
143 struct signal_frame32 __user *sf; in do_sigreturn32() local
158 sf = (struct signal_frame32 __user *) regs->u_regs[UREG_FP]; in do_sigreturn32()
161 if (!access_ok(VERIFY_READ, sf, sizeof(*sf)) || in do_sigreturn32()
162 (((unsigned long) sf) & 3)) in do_sigreturn32()
165 if (get_user(pc, &sf->info.si_regs.pc) || in do_sigreturn32()
166 __get_user(npc, &sf->info.si_regs.npc)) in do_sigreturn32()
180 err = __get_user(regs->y, &sf->info.si_regs.y); in do_sigreturn32()
181 err |= __get_user(psr, &sf->info.si_regs.psr); in do_sigreturn32()
184 err |= __get_user(regs->u_regs[i], &sf->info.si_regs.u_regs[i]); in do_sigreturn32()
186 err |= __get_user(i, &sf->v8plus.g_upper[0]); in do_sigreturn32()
191 err |= __get_user(((u32 *)regs->u_regs)[2*i], &sf->v8plus.g_upper[i]); in do_sigreturn32()
192 err |= __get_user(asi, &sf->v8plus.asi); in do_sigreturn32()
205 err |= __get_user(fpu_save, &sf->fpu_save); in do_sigreturn32()
208 err |= __get_user(rwin_save, &sf->rwin_save); in do_sigreturn32()
213 err |= __get_user(seta.sig[0], &sf->info.si_mask); in do_sigreturn32()
214 err |= copy_from_user(&seta.sig[1], &sf->extramask, in do_sigreturn32()
229 struct rt_signal_frame32 __user *sf; in do_rt_sigreturn32() local
242 sf = (struct rt_signal_frame32 __user *) regs->u_regs[UREG_FP]; in do_rt_sigreturn32()
245 if (!access_ok(VERIFY_READ, sf, sizeof(*sf)) || in do_rt_sigreturn32()
246 (((unsigned long) sf) & 3)) in do_rt_sigreturn32()
249 if (get_user(pc, &sf->regs.pc) || in do_rt_sigreturn32()
250 __get_user(npc, &sf->regs.npc)) in do_rt_sigreturn32()
264 err = __get_user(regs->y, &sf->regs.y); in do_rt_sigreturn32()
265 err |= __get_user(psr, &sf->regs.psr); in do_rt_sigreturn32()
268 err |= __get_user(regs->u_regs[i], &sf->regs.u_regs[i]); in do_rt_sigreturn32()
270 err |= __get_user(i, &sf->v8plus.g_upper[0]); in do_rt_sigreturn32()
275 err |= __get_user(((u32 *)regs->u_regs)[2*i], &sf->v8plus.g_upper[i]); in do_rt_sigreturn32()
276 err |= __get_user(asi, &sf->v8plus.asi); in do_rt_sigreturn32()
289 err |= __get_user(fpu_save, &sf->fpu_save); in do_rt_sigreturn32()
292 err |= copy_from_user(&seta, &sf->mask, sizeof(compat_sigset_t)); in do_rt_sigreturn32()
293 err |= compat_restore_altstack(&sf->stack); in do_rt_sigreturn32()
297 err |= __get_user(rwin_save, &sf->rwin_save); in do_rt_sigreturn32()
407 struct signal_frame32 __user *sf; in setup_frame32() local
420 sigframe_size = sizeof(*sf); in setup_frame32()
426 sf = (struct signal_frame32 __user *) in setup_frame32()
429 if (invalid_frame_pointer(sf, sigframe_size)) { in setup_frame32()
434 tail = (sf + 1); in setup_frame32()
441 err = put_user(regs->tpc, &sf->info.si_regs.pc); in setup_frame32()
442 err |= __put_user(regs->tnpc, &sf->info.si_regs.npc); in setup_frame32()
443 err |= __put_user(regs->y, &sf->info.si_regs.y); in setup_frame32()
447 err |= __put_user(psr, &sf->info.si_regs.psr); in setup_frame32()
449 err |= __put_user(regs->u_regs[i], &sf->info.si_regs.u_regs[i]); in setup_frame32()
450 err |= __put_user(sizeof(siginfo_extra_v8plus_t), &sf->extra_size); in setup_frame32()
451 err |= __put_user(SIGINFO_EXTRA_V8PLUS_MAGIC, &sf->v8plus.g_upper[0]); in setup_frame32()
454 &sf->v8plus.g_upper[i]); in setup_frame32()
456 &sf->v8plus.asi); in setup_frame32()
462 err |= __put_user((u64)fp, &sf->fpu_save); in setup_frame32()
464 err |= __put_user(0, &sf->fpu_save); in setup_frame32()
470 err |= __put_user((u64)rwp, &sf->rwin_save); in setup_frame32()
473 err |= __put_user(0, &sf->rwin_save); in setup_frame32()
482 err |= __put_user(seta.sig[0], &sf->info.si_mask); in setup_frame32()
483 err |= __copy_to_user(sf->extramask, &seta.sig[1], in setup_frame32()
487 err |= copy_in_user((u32 __user *)sf, in setup_frame32()
495 err |= __put_user(rp->locals[i], &sf->ss.locals[i]); in setup_frame32()
497 err |= __put_user(rp->ins[i], &sf->ss.ins[i]); in setup_frame32()
498 err |= __put_user(rp->ins[6], &sf->ss.fp); in setup_frame32()
499 err |= __put_user(rp->ins[7], &sf->ss.callers_pc); in setup_frame32()
505 regs->u_regs[UREG_FP] = (unsigned long) sf; in setup_frame32()
507 regs->u_regs[UREG_I1] = (unsigned long) &sf->info; in setup_frame32()
508 regs->u_regs[UREG_I2] = (unsigned long) &sf->info; in setup_frame32()
522 unsigned long address = ((unsigned long)&(sf->insns[0])); in setup_frame32()
524 regs->u_regs[UREG_I7] = (unsigned long) (&(sf->insns[0]) - 2); in setup_frame32()
526 err = __put_user(0x821020d8, &sf->insns[0]); /*mov __NR_sigreturn, %g1*/ in setup_frame32()
527 err |= __put_user(0x91d02010, &sf->insns[1]); /*t 0x10*/ in setup_frame32()
538 struct rt_signal_frame32 __user *sf; in setup_rt_frame32() local
551 sigframe_size = sizeof(*sf); in setup_rt_frame32()
557 sf = (struct rt_signal_frame32 __user *) in setup_rt_frame32()
560 if (invalid_frame_pointer(sf, sigframe_size)) { in setup_rt_frame32()
565 tail = (sf + 1); in setup_rt_frame32()
572 err = put_user(regs->tpc, &sf->regs.pc); in setup_rt_frame32()
573 err |= __put_user(regs->tnpc, &sf->regs.npc); in setup_rt_frame32()
574 err |= __put_user(regs->y, &sf->regs.y); in setup_rt_frame32()
578 err |= __put_user(psr, &sf->regs.psr); in setup_rt_frame32()
580 err |= __put_user(regs->u_regs[i], &sf->regs.u_regs[i]); in setup_rt_frame32()
581 err |= __put_user(sizeof(siginfo_extra_v8plus_t), &sf->extra_size); in setup_rt_frame32()
582 err |= __put_user(SIGINFO_EXTRA_V8PLUS_MAGIC, &sf->v8plus.g_upper[0]); in setup_rt_frame32()
585 &sf->v8plus.g_upper[i]); in setup_rt_frame32()
587 &sf->v8plus.asi); in setup_rt_frame32()
593 err |= __put_user((u64)fp, &sf->fpu_save); in setup_rt_frame32()
595 err |= __put_user(0, &sf->fpu_save); in setup_rt_frame32()
601 err |= __put_user((u64)rwp, &sf->rwin_save); in setup_rt_frame32()
604 err |= __put_user(0, &sf->rwin_save); in setup_rt_frame32()
608 err |= copy_siginfo_to_user32(&sf->info, &ksig->info); in setup_rt_frame32()
611 err |= __compat_save_altstack(&sf->stack, regs->u_regs[UREG_FP]); in setup_rt_frame32()
615 err |= __copy_to_user(&sf->mask, &seta, sizeof(compat_sigset_t)); in setup_rt_frame32()
618 err |= copy_in_user((u32 __user *)sf, in setup_rt_frame32()
626 err |= __put_user(rp->locals[i], &sf->ss.locals[i]); in setup_rt_frame32()
628 err |= __put_user(rp->ins[i], &sf->ss.ins[i]); in setup_rt_frame32()
629 err |= __put_user(rp->ins[6], &sf->ss.fp); in setup_rt_frame32()
630 err |= __put_user(rp->ins[7], &sf->ss.callers_pc); in setup_rt_frame32()
636 regs->u_regs[UREG_FP] = (unsigned long) sf; in setup_rt_frame32()
638 regs->u_regs[UREG_I1] = (unsigned long) &sf->info; in setup_rt_frame32()
639 regs->u_regs[UREG_I2] = (unsigned long) &sf->regs; in setup_rt_frame32()
653 unsigned long address = ((unsigned long)&(sf->insns[0])); in setup_rt_frame32()
655 regs->u_regs[UREG_I7] = (unsigned long) (&(sf->insns[0]) - 2); in setup_rt_frame32()
658 err |= __put_user(0x82102065, &sf->insns[0]); in setup_rt_frame32()
661 err |= __put_user(0x91d02010, &sf->insns[1]); in setup_rt_frame32()