Lines Matching refs:child

413 static int putreg(struct task_struct *child,  in putreg()  argument
423 return set_segment_reg(child, offset, value); in putreg()
426 return set_flags(child, value); in putreg()
430 if (value >= TASK_SIZE_OF(child)) in putreg()
437 if (child->thread.fs != value) in putreg()
438 return do_arch_prctl(child, ARCH_SET_FS, value); in putreg()
444 if (value >= TASK_SIZE_OF(child)) in putreg()
446 if (child->thread.gs != value) in putreg()
447 return do_arch_prctl(child, ARCH_SET_GS, value); in putreg()
452 *pt_regs_access(task_pt_regs(child), offset) = value; in putreg()
803 void ptrace_disable(struct task_struct *child) in ptrace_disable() argument
805 user_disable_single_step(child); in ptrace_disable()
807 clear_tsk_thread_flag(child, TIF_SYSCALL_EMU); in ptrace_disable()
815 long arch_ptrace(struct task_struct *child, long request, in arch_ptrace() argument
832 tmp = getreg(child, addr); in arch_ptrace()
836 tmp = ptrace_get_debugreg(child, addr / sizeof(data)); in arch_ptrace()
848 ret = putreg(child, addr, data); in arch_ptrace()
852 ret = ptrace_set_debugreg(child, in arch_ptrace()
858 return copy_regset_to_user(child, in arch_ptrace()
865 return copy_regset_from_user(child, in arch_ptrace()
872 return copy_regset_to_user(child, in arch_ptrace()
879 return copy_regset_from_user(child, in arch_ptrace()
887 return copy_regset_to_user(child, &user_x86_32_view, in arch_ptrace()
893 return copy_regset_from_user(child, &user_x86_32_view, in arch_ptrace()
903 ret = do_get_thread_area(child, addr, in arch_ptrace()
910 ret = do_set_thread_area(child, addr, in arch_ptrace()
920 ret = do_arch_prctl(child, data, addr); in arch_ptrace()
925 ret = ptrace_request(child, request, addr, data); in arch_ptrace()
945 return set_segment_reg(child, \
950 static int putreg32(struct task_struct *child, unsigned regno, u32 value) in putreg32() argument
952 struct pt_regs *regs = task_pt_regs(child); in putreg32()
982 if (syscall_get_nr(child, regs) >= 0) in putreg32()
983 task_thread_info(child)->status |= TS_COMPAT; in putreg32()
987 return set_flags(child, value); in putreg32()
992 return ptrace_set_debugreg(child, regno / 4, value); in putreg32()
1016 *val = get_segment_reg(child, \
1020 static int getreg32(struct task_struct *child, unsigned regno, u32 *val) in getreg32() argument
1022 struct pt_regs *regs = task_pt_regs(child); in getreg32()
1045 *val = get_flags(child); in getreg32()
1051 *val = ptrace_get_debugreg(child, regno / 4); in getreg32()
1127 static long x32_arch_ptrace(struct task_struct *child, in x32_arch_ptrace() argument
1149 tmp = getreg(child, addr); in x32_arch_ptrace()
1153 tmp = ptrace_get_debugreg(child, addr / sizeof(data)); in x32_arch_ptrace()
1169 ret = putreg(child, addr, data); in x32_arch_ptrace()
1173 ret = ptrace_set_debugreg(child, in x32_arch_ptrace()
1179 return copy_regset_to_user(child, in x32_arch_ptrace()
1186 return copy_regset_from_user(child, in x32_arch_ptrace()
1193 return copy_regset_to_user(child, in x32_arch_ptrace()
1200 return copy_regset_from_user(child, in x32_arch_ptrace()
1207 return compat_ptrace_request(child, request, addr, data); in x32_arch_ptrace()
1214 long compat_arch_ptrace(struct task_struct *child, compat_long_t request, in compat_arch_ptrace() argument
1225 return x32_arch_ptrace(child, request, caddr, cdata); in compat_arch_ptrace()
1230 ret = getreg32(child, addr, &val); in compat_arch_ptrace()
1236 ret = putreg32(child, addr, data); in compat_arch_ptrace()
1240 return copy_regset_to_user(child, &user_x86_32_view, in compat_arch_ptrace()
1246 return copy_regset_from_user(child, &user_x86_32_view, in compat_arch_ptrace()
1252 return copy_regset_to_user(child, &user_x86_32_view, in compat_arch_ptrace()
1259 child, &user_x86_32_view, REGSET_FP, in compat_arch_ptrace()
1263 return copy_regset_to_user(child, &user_x86_32_view, in compat_arch_ptrace()
1269 return copy_regset_from_user(child, &user_x86_32_view, in compat_arch_ptrace()
1276 return arch_ptrace(child, request, addr, data); in compat_arch_ptrace()
1279 return compat_ptrace_request(child, request, addr, data); in compat_arch_ptrace()