diff options
author | Pavel Labath <labath@google.com> | 2015-08-20 09:06:12 +0000 |
---|---|---|
committer | Pavel Labath <labath@google.com> | 2015-08-20 09:06:12 +0000 |
commit | 101511676406c47a58e587deafb81fbf4e2c079b (patch) | |
tree | f4550dfbd3396f22b514268821aacf3225033d6c /source/Plugins/UnwindAssembly/InstEmulation | |
parent | 7a54dc7ef465c4a61f016c7f939658308b117354 (diff) | |
download | lldb-101511676406c47a58e587deafb81fbf4e2c079b.tar.gz |
[NativeProcessLinux] Fix a bug in instruction-stepping over thread creation
Summary:
There was a bug in NativeProcessLinux, where doing an instruction-level single-step over the
thread-creation syscall resulted in loss of control over the inferior. This happened because
after the inferior entered the thread-creation maintenance stop, we unconditionally performed a
PTRACE_CONT, even though the original intention was to do a PTRACE_SINGLESTEP. This is fixed by
storing the original state of the thread before the stop (stepping or running) and then
performing the appropriate action when resuming.
I also get rid of the callback in the ThreadContext structure, which stored the lambda used to
resume the thread, but which was not used consistently.
A test verifying the correctness of the new behavior is included.
Reviewers: ovyalov, tberghammer
Subscribers: lldb-commits
Differential Revision: http://reviews.llvm.org/D12104
git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@245545 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'source/Plugins/UnwindAssembly/InstEmulation')
0 files changed, 0 insertions, 0 deletions