Lines Matching refs:sf

86 	struct signal_frame32 __user *sf;  in do_sigreturn32()  local
101 sf = (struct signal_frame32 __user *) regs->u_regs[UREG_FP]; in do_sigreturn32()
104 if (invalid_frame_pointer(sf, sizeof(*sf))) in do_sigreturn32()
107 if (get_user(ufp, &sf->info.si_regs.u_regs[UREG_FP])) in do_sigreturn32()
113 if (__get_user(pc, &sf->info.si_regs.pc) || in do_sigreturn32()
114 __get_user(npc, &sf->info.si_regs.npc)) in do_sigreturn32()
128 err = __get_user(regs->y, &sf->info.si_regs.y); in do_sigreturn32()
129 err |= __get_user(psr, &sf->info.si_regs.psr); in do_sigreturn32()
132 err |= __get_user(regs->u_regs[i], &sf->info.si_regs.u_regs[i]); in do_sigreturn32()
134 err |= __get_user(i, &sf->v8plus.g_upper[0]); in do_sigreturn32()
139 err |= __get_user(((u32 *)regs->u_regs)[2*i], &sf->v8plus.g_upper[i]); in do_sigreturn32()
140 err |= __get_user(asi, &sf->v8plus.asi); in do_sigreturn32()
153 err |= __get_user(fpu_save, &sf->fpu_save); in do_sigreturn32()
156 err |= __get_user(rwin_save, &sf->rwin_save); in do_sigreturn32()
161 err |= __get_user(seta.sig[0], &sf->info.si_mask); in do_sigreturn32()
162 err |= copy_from_user(&seta.sig[1], &sf->extramask, in do_sigreturn32()
177 struct rt_signal_frame32 __user *sf; in do_rt_sigreturn32() local
189 sf = (struct rt_signal_frame32 __user *) regs->u_regs[UREG_FP]; in do_rt_sigreturn32()
192 if (invalid_frame_pointer(sf, sizeof(*sf))) in do_rt_sigreturn32()
195 if (get_user(ufp, &sf->regs.u_regs[UREG_FP])) in do_rt_sigreturn32()
201 if (__get_user(pc, &sf->regs.pc) || in do_rt_sigreturn32()
202 __get_user(npc, &sf->regs.npc)) in do_rt_sigreturn32()
216 err = __get_user(regs->y, &sf->regs.y); in do_rt_sigreturn32()
217 err |= __get_user(psr, &sf->regs.psr); in do_rt_sigreturn32()
220 err |= __get_user(regs->u_regs[i], &sf->regs.u_regs[i]); in do_rt_sigreturn32()
222 err |= __get_user(i, &sf->v8plus.g_upper[0]); in do_rt_sigreturn32()
227 err |= __get_user(((u32 *)regs->u_regs)[2*i], &sf->v8plus.g_upper[i]); in do_rt_sigreturn32()
228 err |= __get_user(asi, &sf->v8plus.asi); in do_rt_sigreturn32()
241 err |= __get_user(fpu_save, &sf->fpu_save); in do_rt_sigreturn32()
244 err |= get_compat_sigset(&set, &sf->mask); in do_rt_sigreturn32()
245 err |= compat_restore_altstack(&sf->stack); in do_rt_sigreturn32()
249 err |= __get_user(rwin_save, &sf->rwin_save); in do_rt_sigreturn32()
354 struct signal_frame32 __user *sf; in setup_frame32() local
367 sigframe_size = sizeof(*sf); in setup_frame32()
373 sf = (struct signal_frame32 __user *) in setup_frame32()
376 if (invalid_frame_pointer(sf, sigframe_size)) { in setup_frame32()
379 current->comm, current->pid, (unsigned long)sf, in setup_frame32()
385 tail = (sf + 1); in setup_frame32()
392 err = put_user(regs->tpc, &sf->info.si_regs.pc); in setup_frame32()
393 err |= __put_user(regs->tnpc, &sf->info.si_regs.npc); in setup_frame32()
394 err |= __put_user(regs->y, &sf->info.si_regs.y); in setup_frame32()
398 err |= __put_user(psr, &sf->info.si_regs.psr); in setup_frame32()
400 err |= __put_user(regs->u_regs[i], &sf->info.si_regs.u_regs[i]); in setup_frame32()
401 err |= __put_user(sizeof(siginfo_extra_v8plus_t), &sf->extra_size); in setup_frame32()
402 err |= __put_user(SIGINFO_EXTRA_V8PLUS_MAGIC, &sf->v8plus.g_upper[0]); in setup_frame32()
405 &sf->v8plus.g_upper[i]); in setup_frame32()
407 &sf->v8plus.asi); in setup_frame32()
413 err |= __put_user((u64)fp, &sf->fpu_save); in setup_frame32()
415 err |= __put_user(0, &sf->fpu_save); in setup_frame32()
421 err |= __put_user((u64)rwp, &sf->rwin_save); in setup_frame32()
424 err |= __put_user(0, &sf->rwin_save); in setup_frame32()
433 err |= __put_user(seta.sig[0], &sf->info.si_mask); in setup_frame32()
434 err |= __copy_to_user(sf->extramask, &seta.sig[1], in setup_frame32()
438 err |= raw_copy_in_user((u32 __user *)sf, in setup_frame32()
446 err |= __put_user(rp->locals[i], &sf->ss.locals[i]); in setup_frame32()
448 err |= __put_user(rp->ins[i], &sf->ss.ins[i]); in setup_frame32()
449 err |= __put_user(rp->ins[6], &sf->ss.fp); in setup_frame32()
450 err |= __put_user(rp->ins[7], &sf->ss.callers_pc); in setup_frame32()
456 regs->u_regs[UREG_FP] = (unsigned long) sf; in setup_frame32()
458 regs->u_regs[UREG_I1] = (unsigned long) &sf->info; in setup_frame32()
459 regs->u_regs[UREG_I2] = (unsigned long) &sf->info; in setup_frame32()
473 unsigned long address = ((unsigned long)&(sf->insns[0])); in setup_frame32()
475 regs->u_regs[UREG_I7] = (unsigned long) (&(sf->insns[0]) - 2); in setup_frame32()
477 err = __put_user(0x821020d8, &sf->insns[0]); /*mov __NR_sigreturn, %g1*/ in setup_frame32()
478 err |= __put_user(0x91d02010, &sf->insns[1]); /*t 0x10*/ in setup_frame32()
489 struct rt_signal_frame32 __user *sf; in setup_rt_frame32() local
501 sigframe_size = sizeof(*sf); in setup_rt_frame32()
507 sf = (struct rt_signal_frame32 __user *) in setup_rt_frame32()
510 if (invalid_frame_pointer(sf, sigframe_size)) { in setup_rt_frame32()
513 current->comm, current->pid, (unsigned long)sf, in setup_rt_frame32()
519 tail = (sf + 1); in setup_rt_frame32()
526 err = put_user(regs->tpc, &sf->regs.pc); in setup_rt_frame32()
527 err |= __put_user(regs->tnpc, &sf->regs.npc); in setup_rt_frame32()
528 err |= __put_user(regs->y, &sf->regs.y); in setup_rt_frame32()
532 err |= __put_user(psr, &sf->regs.psr); in setup_rt_frame32()
534 err |= __put_user(regs->u_regs[i], &sf->regs.u_regs[i]); in setup_rt_frame32()
535 err |= __put_user(sizeof(siginfo_extra_v8plus_t), &sf->extra_size); in setup_rt_frame32()
536 err |= __put_user(SIGINFO_EXTRA_V8PLUS_MAGIC, &sf->v8plus.g_upper[0]); in setup_rt_frame32()
539 &sf->v8plus.g_upper[i]); in setup_rt_frame32()
541 &sf->v8plus.asi); in setup_rt_frame32()
547 err |= __put_user((u64)fp, &sf->fpu_save); in setup_rt_frame32()
549 err |= __put_user(0, &sf->fpu_save); in setup_rt_frame32()
555 err |= __put_user((u64)rwp, &sf->rwin_save); in setup_rt_frame32()
558 err |= __put_user(0, &sf->rwin_save); in setup_rt_frame32()
562 err |= copy_siginfo_to_user32(&sf->info, &ksig->info); in setup_rt_frame32()
565 err |= __compat_save_altstack(&sf->stack, regs->u_regs[UREG_FP]); in setup_rt_frame32()
567 err |= put_compat_sigset(&sf->mask, oldset, sizeof(compat_sigset_t)); in setup_rt_frame32()
570 err |= raw_copy_in_user((u32 __user *)sf, in setup_rt_frame32()
578 err |= __put_user(rp->locals[i], &sf->ss.locals[i]); in setup_rt_frame32()
580 err |= __put_user(rp->ins[i], &sf->ss.ins[i]); in setup_rt_frame32()
581 err |= __put_user(rp->ins[6], &sf->ss.fp); in setup_rt_frame32()
582 err |= __put_user(rp->ins[7], &sf->ss.callers_pc); in setup_rt_frame32()
588 regs->u_regs[UREG_FP] = (unsigned long) sf; in setup_rt_frame32()
590 regs->u_regs[UREG_I1] = (unsigned long) &sf->info; in setup_rt_frame32()
591 regs->u_regs[UREG_I2] = (unsigned long) &sf->regs; in setup_rt_frame32()
605 unsigned long address = ((unsigned long)&(sf->insns[0])); in setup_rt_frame32()
607 regs->u_regs[UREG_I7] = (unsigned long) (&(sf->insns[0]) - 2); in setup_rt_frame32()
610 err |= __put_user(0x82102065, &sf->insns[0]); in setup_rt_frame32()
613 err |= __put_user(0x91d02010, &sf->insns[1]); in setup_rt_frame32()