Lines Matching full:frame

124 	struct sigframe_ia32 __user *frame = (struct sigframe_ia32 __user *)(regs->sp-8);  in sys32_sigreturn()  local
127 if (!access_ok(frame, sizeof(*frame))) in sys32_sigreturn()
129 if (__get_user(set.sig[0], &frame->sc.oldmask) in sys32_sigreturn()
132 &frame->extramask, in sys32_sigreturn()
133 sizeof(frame->extramask)))) in sys32_sigreturn()
138 if (ia32_restore_sigcontext(regs, &frame->sc)) in sys32_sigreturn()
143 signal_fault(regs, frame, "32bit sigreturn"); in sys32_sigreturn()
150 struct rt_sigframe_ia32 __user *frame; in sys32_rt_sigreturn() local
153 frame = (struct rt_sigframe_ia32 __user *)(regs->sp - 4); in sys32_rt_sigreturn()
155 if (!access_ok(frame, sizeof(*frame))) in sys32_rt_sigreturn()
157 if (__copy_from_user(&set, &frame->uc.uc_sigmask, sizeof(set))) in sys32_rt_sigreturn()
162 if (ia32_restore_sigcontext(regs, &frame->uc.uc_mcontext)) in sys32_rt_sigreturn()
165 if (compat_restore_altstack(&frame->uc.uc_stack)) in sys32_rt_sigreturn()
171 signal_fault(regs, frame, "32bit rt sigreturn"); in sys32_rt_sigreturn()
176 * Set up a signal frame.
254 struct sigframe_ia32 __user *frame; in ia32_setup_frame() local
270 frame = get_sigframe(ksig, regs, sizeof(*frame), &fpstate); in ia32_setup_frame()
272 if (!access_ok(frame, sizeof(*frame))) in ia32_setup_frame()
275 if (__put_user(sig, &frame->sig)) in ia32_setup_frame()
278 if (ia32_setup_sigcontext(&frame->sc, fpstate, regs, set->sig[0])) in ia32_setup_frame()
282 if (__copy_to_user(frame->extramask, &set->sig[1], in ia32_setup_frame()
283 sizeof(frame->extramask))) in ia32_setup_frame()
295 restorer = &frame->retcode; in ia32_setup_frame()
299 put_user_ex(ptr_to_compat(restorer), &frame->pretcode); in ia32_setup_frame()
305 put_user_ex(*((u64 *)&code), (u64 __user *)frame->retcode); in ia32_setup_frame()
312 regs->sp = (unsigned long) frame; in ia32_setup_frame()
332 struct rt_sigframe_ia32 __user *frame; in ia32_setup_rt_frame() local
350 frame = get_sigframe(ksig, regs, sizeof(*frame), &fpstate); in ia32_setup_rt_frame()
352 if (!access_ok(frame, sizeof(*frame))) in ia32_setup_rt_frame()
356 put_user_ex(sig, &frame->sig); in ia32_setup_rt_frame()
357 put_user_ex(ptr_to_compat(&frame->info), &frame->pinfo); in ia32_setup_rt_frame()
358 put_user_ex(ptr_to_compat(&frame->uc), &frame->puc); in ia32_setup_rt_frame()
362 put_user_ex(UC_FP_XSTATE, &frame->uc.uc_flags); in ia32_setup_rt_frame()
364 put_user_ex(0, &frame->uc.uc_flags); in ia32_setup_rt_frame()
365 put_user_ex(0, &frame->uc.uc_link); in ia32_setup_rt_frame()
366 compat_save_altstack_ex(&frame->uc.uc_stack, regs->sp); in ia32_setup_rt_frame()
373 put_user_ex(ptr_to_compat(restorer), &frame->pretcode); in ia32_setup_rt_frame()
379 put_user_ex(*((u64 *)&code), (u64 __user *)frame->retcode); in ia32_setup_rt_frame()
382 err |= __copy_siginfo_to_user32(&frame->info, &ksig->info, false); in ia32_setup_rt_frame()
383 err |= ia32_setup_sigcontext(&frame->uc.uc_mcontext, fpstate, in ia32_setup_rt_frame()
385 err |= __copy_to_user(&frame->uc.uc_sigmask, set, sizeof(*set)); in ia32_setup_rt_frame()
391 regs->sp = (unsigned long) frame; in ia32_setup_rt_frame()
396 regs->dx = (unsigned long) &frame->info; in ia32_setup_rt_frame()
397 regs->cx = (unsigned long) &frame->uc; in ia32_setup_rt_frame()