|
@@ -206,5 +206,17 @@ int set_fpxregs(struct user_fxsr_struct __user *buf, struct task_struct *child)
|
|
|
long subarch_ptrace(struct task_struct *child, long request,
|
|
|
unsigned long addr, unsigned long data)
|
|
|
{
|
|
|
- return -EIO;
|
|
|
+ int ret = -EIO;
|
|
|
+ void __user *datap = (void __user *) data;
|
|
|
+
|
|
|
+ switch (request) {
|
|
|
+ case PTRACE_GETFPXREGS: /* Get the child FPU state. */
|
|
|
+ ret = get_fpxregs(datap, child);
|
|
|
+ break;
|
|
|
+ case PTRACE_SETFPXREGS: /* Set the child FPU state. */
|
|
|
+ ret = set_fpxregs(datap, child);
|
|
|
+ break;
|
|
|
+ }
|
|
|
+
|
|
|
+ return ret;
|
|
|
}
|