/* * Ptrace user space interface. * * Copyright IBM Corp. 1999, 2010 * Author(s): Denis Joseph Barrow * Martin Schwidefsky (schwidefsky@de.ibm.com) */#include<linux/kernel.h>#include<linux/sched.h>#include<linux/sched/task_stack.h>#include<linux/mm.h>#include<linux/smp.h>#include<linux/errno.h>#include<linux/ptrace.h>#include<linux/user.h>#include<linux/security.h>#include<linux/audit.h>#include<linux/signal.h>#include<linux/elf.h>#include<linux/regset.h>#include<linux/tracehook.h>#include<linux/seccomp.h>#include<linux/compat.h>#include<trace/syscall.h>#include<asm/segment.h>#include<asm/page.h>#include<asm/pgtable.h>#include<asm/pgalloc.h>#include<linux/uaccess.h>#include<asm/unistd.h>#include<asm/switch_to.h>#include"entry.h"#ifdef CONFIG_COMPAT#include"compat_ptrace.h"#endif#define CREATE_TRACE_POINTS#include<trace/events/syscalls.h>voidupdate_cr_regs(structtask_struct*task){structpt_regs*regs=task_pt_regs(task);structthread_struct*thread=&task->thread;struct