diff options
author | Yao Qi <yao.qi@linaro.org> | 2016-04-25 09:46:36 +0100 |
---|---|---|
committer | Yao Qi <yao.qi@linaro.org> | 2016-04-25 09:46:36 +0100 |
commit | 484b3c325d8182cd7b7da4ceeaedc238c7f80b5c (patch) | |
tree | 0d468ee77e93a0a6d5e847ebc654cd5962836e1e /gdb/gdbserver/ChangeLog | |
parent | 85ba7d867af39fe1408accd1f9ea4ca3dcb84b99 (diff) | |
download | gdb-484b3c325d8182cd7b7da4ceeaedc238c7f80b5c.zip gdb-484b3c325d8182cd7b7da4ceeaedc238c7f80b5c.tar.gz gdb-484b3c325d8182cd7b7da4ceeaedc238c7f80b5c.tar.bz2 |
Resume the inferior with signal rather than stepping over
When GDBserver steps over a breakpoint using software single step, it
enqueues the signal, single step and deliver the signal in the next
resume if step over is not needed. In this way, the program won't
receive the signal if the conditional breakpoint is set a branch to
self instruction, because the step over is always needed.
This patch removes the restriction that don't deliver the signal to
the inferior if we are trying to reinsert a breakpoint for software
single step and change the decision on resume vs. step-over when the
LWP has pending signals to deliver.
gdb/gdbserver:
2016-04-25 Yao Qi <yao.qi@linaro.org>
* linux-low.c (lwp_signal_can_be_delivered): Adjust.
(need_step_over_p): Return zero if the LWP has pending signals
can be delivered on software single step target.
Diffstat (limited to 'gdb/gdbserver/ChangeLog')
-rw-r--r-- | gdb/gdbserver/ChangeLog | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog index 323d582..c9b1e9d 100644 --- a/gdb/gdbserver/ChangeLog +++ b/gdb/gdbserver/ChangeLog @@ -1,5 +1,11 @@ 2016-04-25 Yao Qi <yao.qi@linaro.org> + * linux-low.c (lwp_signal_can_be_delivered): Adjust. + (need_step_over_p): Return zero if the LWP has pending signals + can be delivered on software single step target. + +2016-04-25 Yao Qi <yao.qi@linaro.org> + * linux-low.c (reinsert_raw_breakpoint): If bp->inserted is true return instead of error. |