Lines Matching refs:sf

65 	struct signal_frame __user *sf;  in do_sigreturn()  local
77 sf = (struct signal_frame __user *) regs->u_regs[UREG_FP]; in do_sigreturn()
80 if (!access_ok(VERIFY_READ, sf, sizeof(*sf))) in do_sigreturn()
83 if (((unsigned long) sf) & 3) in do_sigreturn()
86 err = __get_user(pc, &sf->info.si_regs.pc); in do_sigreturn()
87 err |= __get_user(npc, &sf->info.si_regs.npc); in do_sigreturn()
94 err |= __copy_from_user(regs, &sf->info.si_regs, sizeof(struct pt_regs)); in do_sigreturn()
103 err |= __get_user(fpu_save, &sf->fpu_save); in do_sigreturn()
106 err |= __get_user(rwin_save, &sf->rwin_save); in do_sigreturn()
113 err |= __get_user(set.sig[0], &sf->info.si_mask); in do_sigreturn()
114 err |= __copy_from_user(&set.sig[1], &sf->extramask, in do_sigreturn()
129 struct rt_signal_frame __user *sf; in do_rt_sigreturn() local
137 sf = (struct rt_signal_frame __user *) regs->u_regs[UREG_FP]; in do_rt_sigreturn()
138 if (!access_ok(VERIFY_READ, sf, sizeof(*sf)) || in do_rt_sigreturn()
139 (((unsigned long) sf) & 0x03)) in do_rt_sigreturn()
142 err = __get_user(pc, &sf->regs.pc); in do_rt_sigreturn()
143 err |= __get_user(npc, &sf->regs.npc); in do_rt_sigreturn()
146 err |= __get_user(regs->y, &sf->regs.y); in do_rt_sigreturn()
147 err |= __get_user(psr, &sf->regs.psr); in do_rt_sigreturn()
150 &sf->regs.u_regs[UREG_G1], 15 * sizeof(u32)); in do_rt_sigreturn()
157 err |= __get_user(fpu_save, &sf->fpu_save); in do_rt_sigreturn()
160 err |= __copy_from_user(&set, &sf->mask, sizeof(sigset_t)); in do_rt_sigreturn()
161 err |= restore_altstack(&sf->stack); in do_rt_sigreturn()
169 err |= __get_user(rwin_save, &sf->rwin_save); in do_rt_sigreturn()
218 struct signal_frame __user *sf; in setup_frame() local
227 sigframe_size = sizeof(*sf); in setup_frame()
233 sf = (struct signal_frame __user *) in setup_frame()
236 if (invalid_frame_pointer(sf, sigframe_size)) { in setup_frame()
241 tail = sf + 1; in setup_frame()
244 err = __copy_to_user(&sf->info.si_regs, regs, sizeof(struct pt_regs)); in setup_frame()
246 err |= __put_user(0, &sf->extra_size); in setup_frame()
252 err |= __put_user(fp, &sf->fpu_save); in setup_frame()
254 err |= __put_user(0, &sf->fpu_save); in setup_frame()
260 err |= __put_user(rwp, &sf->rwin_save); in setup_frame()
262 err |= __put_user(0, &sf->rwin_save); in setup_frame()
265 err |= __put_user(oldset->sig[0], &sf->info.si_mask); in setup_frame()
266 err |= __copy_to_user(sf->extramask, &oldset->sig[1], in setup_frame()
269 err |= __copy_to_user(sf, (char *) regs->u_regs[UREG_FP], in setup_frame()
275 err |= __copy_to_user(sf, rp, sizeof(struct reg_window32)); in setup_frame()
281 regs->u_regs[UREG_FP] = (unsigned long) sf; in setup_frame()
283 regs->u_regs[UREG_I1] = (unsigned long) &sf->info; in setup_frame()
284 regs->u_regs[UREG_I2] = (unsigned long) &sf->info; in setup_frame()
294 regs->u_regs[UREG_I7] = (unsigned long)(&(sf->insns[0]) - 2); in setup_frame()
297 err |= __put_user(0x821020d8, &sf->insns[0]); in setup_frame()
300 err |= __put_user(0x91d02010, &sf->insns[1]); in setup_frame()
305 flush_sig_insns(current->mm, (unsigned long) &(sf->insns[0])); in setup_frame()
313 struct rt_signal_frame __user *sf; in setup_rt_frame() local
321 sigframe_size = sizeof(*sf); in setup_rt_frame()
326 sf = (struct rt_signal_frame __user *) in setup_rt_frame()
328 if (invalid_frame_pointer(sf, sigframe_size)) { in setup_rt_frame()
333 tail = sf + 1; in setup_rt_frame()
334 err = __put_user(regs->pc, &sf->regs.pc); in setup_rt_frame()
335 err |= __put_user(regs->npc, &sf->regs.npc); in setup_rt_frame()
336 err |= __put_user(regs->y, &sf->regs.y); in setup_rt_frame()
340 err |= __put_user(psr, &sf->regs.psr); in setup_rt_frame()
341 err |= __copy_to_user(&sf->regs.u_regs, regs->u_regs, sizeof(regs->u_regs)); in setup_rt_frame()
342 err |= __put_user(0, &sf->extra_size); in setup_rt_frame()
348 err |= __put_user(fp, &sf->fpu_save); in setup_rt_frame()
350 err |= __put_user(0, &sf->fpu_save); in setup_rt_frame()
356 err |= __put_user(rwp, &sf->rwin_save); in setup_rt_frame()
358 err |= __put_user(0, &sf->rwin_save); in setup_rt_frame()
360 err |= __copy_to_user(&sf->mask, &oldset->sig[0], sizeof(sigset_t)); in setup_rt_frame()
363 err |= __save_altstack(&sf->stack, regs->u_regs[UREG_FP]); in setup_rt_frame()
366 err |= __copy_to_user(sf, (char *) regs->u_regs[UREG_FP], in setup_rt_frame()
372 err |= __copy_to_user(sf, rp, sizeof(struct reg_window32)); in setup_rt_frame()
375 err |= copy_siginfo_to_user(&sf->info, &ksig->info); in setup_rt_frame()
380 regs->u_regs[UREG_FP] = (unsigned long) sf; in setup_rt_frame()
382 regs->u_regs[UREG_I1] = (unsigned long) &sf->info; in setup_rt_frame()
383 regs->u_regs[UREG_I2] = (unsigned long) &sf->regs; in setup_rt_frame()
391 regs->u_regs[UREG_I7] = (unsigned long)(&(sf->insns[0]) - 2); in setup_rt_frame()
394 err |= __put_user(0x821020d8, &sf->insns[0]); in setup_rt_frame()
397 err |= __put_user(0x91d02010, &sf->insns[1]); in setup_rt_frame()
402 flush_sig_insns(current->mm, (unsigned long) &(sf->insns[0])); in setup_rt_frame()