Lines Matching full:child

132  * does not yet catch signals sent when the child dies.
355 static int putreg(struct task_struct *child, in putreg() argument
365 return set_segment_reg(child, offset, value); in putreg()
368 return set_flags(child, value); in putreg()
374 x86_fsbase_write_task(child, value); in putreg()
379 x86_gsbase_write_task(child, value); in putreg()
384 *pt_regs_access(task_pt_regs(child), offset) = value; in putreg()
699 void ptrace_disable(struct task_struct *child) in ptrace_disable() argument
701 user_disable_single_step(child); in ptrace_disable()
711 long arch_ptrace(struct task_struct *child, long request, in arch_ptrace() argument
736 tmp = getreg(child, addr); in arch_ptrace()
740 tmp = ptrace_get_debugreg(child, addr / sizeof(data)); in arch_ptrace()
752 ret = putreg(child, addr, data); in arch_ptrace()
756 ret = ptrace_set_debugreg(child, in arch_ptrace()
761 case PTRACE_GETREGS: /* Get all gp regs from the child. */ in arch_ptrace()
762 return copy_regset_to_user(child, in arch_ptrace()
768 case PTRACE_SETREGS: /* Set all gp regs in the child. */ in arch_ptrace()
769 return copy_regset_from_user(child, in arch_ptrace()
775 case PTRACE_GETFPREGS: /* Get the child FPU state. */ in arch_ptrace()
776 return copy_regset_to_user(child, in arch_ptrace()
782 case PTRACE_SETFPREGS: /* Set the child FPU state. */ in arch_ptrace()
783 return copy_regset_from_user(child, in arch_ptrace()
790 case PTRACE_GETFPXREGS: /* Get the child extended FPU state. */ in arch_ptrace()
791 return copy_regset_to_user(child, &user_x86_32_view, in arch_ptrace()
796 case PTRACE_SETFPXREGS: /* Set the child extended FPU state. */ in arch_ptrace()
797 return copy_regset_from_user(child, &user_x86_32_view, in arch_ptrace()
807 ret = do_get_thread_area(child, addr, in arch_ptrace()
814 ret = do_set_thread_area(child, addr, in arch_ptrace()
824 ret = do_arch_prctl_64(child, data, addr); in arch_ptrace()
829 ret = ptrace_request(child, request, addr, data); in arch_ptrace()
849 return set_segment_reg(child, \
854 static int putreg32(struct task_struct *child, unsigned regno, u32 value) in putreg32() argument
856 struct pt_regs *regs = task_pt_regs(child); in putreg32()
873 ret = set_segment_reg(child, in putreg32()
877 child->thread.fsbase = in putreg32()
878 x86_fsgsbase_read_task(child, value); in putreg32()
882 ret = set_segment_reg(child, in putreg32()
886 child->thread.gsbase = in putreg32()
887 x86_fsgsbase_read_task(child, value); in putreg32()
914 if (syscall_get_nr(child, regs) != -1) in putreg32()
915 child->thread_info.status |= TS_I386_REGS_POKED; in putreg32()
919 return set_flags(child, value); in putreg32()
924 return ptrace_set_debugreg(child, regno / 4, value); in putreg32()
948 *val = get_segment_reg(child, \
952 static int getreg32(struct task_struct *child, unsigned regno, u32 *val) in getreg32() argument
954 struct pt_regs *regs = task_pt_regs(child); in getreg32()
977 *val = get_flags(child); in getreg32()
983 *val = ptrace_get_debugreg(child, regno / 4); in getreg32()
1045 static long ia32_arch_ptrace(struct task_struct *child, compat_long_t request, in ia32_arch_ptrace() argument
1056 ret = getreg32(child, addr, &val); in ia32_arch_ptrace()
1062 ret = putreg32(child, addr, data); in ia32_arch_ptrace()
1065 case PTRACE_GETREGS: /* Get all gp regs from the child. */ in ia32_arch_ptrace()
1066 return copy_regset_to_user(child, &user_x86_32_view, in ia32_arch_ptrace()
1071 case PTRACE_SETREGS: /* Set all gp regs in the child. */ in ia32_arch_ptrace()
1072 return copy_regset_from_user(child, &user_x86_32_view, in ia32_arch_ptrace()
1077 case PTRACE_GETFPREGS: /* Get the child FPU state. */ in ia32_arch_ptrace()
1078 return copy_regset_to_user(child, &user_x86_32_view, in ia32_arch_ptrace()
1083 case PTRACE_SETFPREGS: /* Set the child FPU state. */ in ia32_arch_ptrace()
1085 child, &user_x86_32_view, REGSET_FP, in ia32_arch_ptrace()
1088 case PTRACE_GETFPXREGS: /* Get the child extended FPU state. */ in ia32_arch_ptrace()
1089 return copy_regset_to_user(child, &user_x86_32_view, in ia32_arch_ptrace()
1094 case PTRACE_SETFPXREGS: /* Set the child extended FPU state. */ in ia32_arch_ptrace()
1095 return copy_regset_from_user(child, &user_x86_32_view, in ia32_arch_ptrace()
1102 return arch_ptrace(child, request, addr, data); in ia32_arch_ptrace()
1105 return compat_ptrace_request(child, request, addr, data); in ia32_arch_ptrace()
1113 static long x32_arch_ptrace(struct task_struct *child, in x32_arch_ptrace() argument
1135 tmp = getreg(child, addr); in x32_arch_ptrace()
1139 tmp = ptrace_get_debugreg(child, addr / sizeof(data)); in x32_arch_ptrace()
1155 ret = putreg(child, addr, data); in x32_arch_ptrace()
1159 ret = ptrace_set_debugreg(child, in x32_arch_ptrace()
1164 case PTRACE_GETREGS: /* Get all gp regs from the child. */ in x32_arch_ptrace()
1165 return copy_regset_to_user(child, in x32_arch_ptrace()
1171 case PTRACE_SETREGS: /* Set all gp regs in the child. */ in x32_arch_ptrace()
1172 return copy_regset_from_user(child, in x32_arch_ptrace()
1178 case PTRACE_GETFPREGS: /* Get the child FPU state. */ in x32_arch_ptrace()
1179 return copy_regset_to_user(child, in x32_arch_ptrace()
1185 case PTRACE_SETFPREGS: /* Set the child FPU state. */ in x32_arch_ptrace()
1186 return copy_regset_from_user(child, in x32_arch_ptrace()
1193 return compat_ptrace_request(child, request, addr, data); in x32_arch_ptrace()
1201 long compat_arch_ptrace(struct task_struct *child, compat_long_t request, in compat_arch_ptrace() argument
1206 return x32_arch_ptrace(child, request, caddr, cdata); in compat_arch_ptrace()
1209 return ia32_arch_ptrace(child, request, caddr, cdata); in compat_arch_ptrace()