diff options
Diffstat (limited to 'gdb/gdbserver/linux-x86-low.c')
-rw-r--r-- | gdb/gdbserver/linux-x86-low.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gdb/gdbserver/linux-x86-low.c b/gdb/gdbserver/linux-x86-low.c index 496baa2..fe5d46e 100644 --- a/gdb/gdbserver/linux-x86-low.c +++ b/gdb/gdbserver/linux-x86-low.c @@ -507,10 +507,11 @@ x86_linux_new_thread (void) static void x86_linux_prepare_to_resume (struct lwp_info *lwp) { + ptid_t ptid = ptid_of (lwp); + if (lwp->arch_private->debug_registers_changed) { int i; - ptid_t ptid = ptid_of (lwp); int pid = ptid_get_pid (ptid); struct process_info *proc = find_process_pid (pid); struct i386_debug_reg_state *state = &proc->private->arch_private->debug_reg_state; @@ -522,6 +523,9 @@ x86_linux_prepare_to_resume (struct lwp_info *lwp) lwp->arch_private->debug_registers_changed = 0; } + + if (lwp->stopped_by_watchpoint) + x86_linux_dr_set (ptid, DR_STATUS, 0); } /* When GDBSERVER is built as a 64-bit application on linux, the |