aboutsummaryrefslogtreecommitdiffstats
path: root/arch/xtensa/kernel/process.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/xtensa/kernel/process.c')
-rw-r--r--arch/xtensa/kernel/process.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/xtensa/kernel/process.c b/arch/xtensa/kernel/process.c
index 1c85323f01d7..5bbfed81c97b 100644
--- a/arch/xtensa/kernel/process.c
+++ b/arch/xtensa/kernel/process.c
@@ -24,6 +24,7 @@
24#include <linux/unistd.h> 24#include <linux/unistd.h>
25#include <linux/ptrace.h> 25#include <linux/ptrace.h>
26#include <linux/elf.h> 26#include <linux/elf.h>
27#include <linux/hw_breakpoint.h>
27#include <linux/init.h> 28#include <linux/init.h>
28#include <linux/prctl.h> 29#include <linux/prctl.h>
29#include <linux/init_task.h> 30#include <linux/init_task.h>
@@ -43,6 +44,7 @@
43#include <linux/atomic.h> 44#include <linux/atomic.h>
44#include <asm/asm-offsets.h> 45#include <asm/asm-offsets.h>
45#include <asm/regs.h> 46#include <asm/regs.h>
47#include <asm/hw_breakpoint.h>
46 48
47extern void ret_from_fork(void); 49extern void ret_from_fork(void);
48extern void ret_from_kernel_thread(void); 50extern void ret_from_kernel_thread(void);
@@ -131,6 +133,7 @@ void flush_thread(void)
131 coprocessor_flush_all(ti); 133 coprocessor_flush_all(ti);
132 coprocessor_release_all(ti); 134 coprocessor_release_all(ti);
133#endif 135#endif
136 flush_ptrace_hw_breakpoint(current);
134} 137}
135 138
136/* 139/*
@@ -273,6 +276,8 @@ int copy_thread(unsigned long clone_flags, unsigned long usp_thread_fn,
273 ti->cpenable = 0; 276 ti->cpenable = 0;
274#endif 277#endif
275 278
279 clear_ptrace_hw_breakpoint(p);
280
276 return 0; 281 return 0;
277} 282}
278 283