[lldb-dev] Breakpoint hitting on wrong thread
Richard Mitton
richard at codersnotes.com
Fri Oct 11 15:04:45 PDT 2013
Hi,
I'm running into an issue on Linux where hitting a breakpoint won't
change the currently selected thread index to that thread:
Notice in this example how the current thread is #1, even though the
breakpoint hit on thread #2. I only have one breakpoint set, and thread
#2 is the only thread anywhere near that breakpoint.
(lldb) b main.c:21
(lldb) run
Process 12353 stopped
thread #2: tid = 12357, 0x000000000040076a a.out`fn_static(param=0x0000000000000000) + 30 at main.c:21, name = 'a.out', stop reason = breakpoint 1.1
frame #0: 0x000000000040076a a.out`fn_static(param=0x0000000000000000) + 30 at main.c:21
18 {
19 var_static *= 2;
20 for(;;)
-> 21 usleep(1); // thread breakpoint
22 }
23
24 int main (int argc, char const *argv[])
(lldb) thread list
Process 12353 stopped
* thread #1: tid = 12353, 0x00007f0d8e31cd3d libc.so.6`nanosleep + 45, name = 'a.out'
thread #2: tid = 12357, 0x000000000040076a a.out`fn_static(param=0x0000000000000000) + 30 at main.c:21, name = 'a.out', stop reason = breakpoint 1.1
Somewhat annoyingly, this only fails when inside a unit test, and works
fine from the command-line.
Has anyone seen anything like this before?
--
Richard Mitton
richard at codersnotes.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20131011/1c0d2ac2/attachment.html>
More information about the lldb-dev
mailing list