[lldb-dev] "image search-paths add" removes all breakpoints from remote server

Ted Woodward via lldb-dev lldb-dev at lists.llvm.org
Wed Nov 16 12:03:10 PST 2016


Is "image search-paths add" supposed to remove all breakpoints from the
remote server? I don't think it should be doing this.

 

PathMappingList::Append calls Target::ImageSearchPathsChanged, which calls
Target::SetExecutableModule, which calls Target::ClearModules, which removes
the breakpoints. But SetExecutableModule doesn't restore the breakpoints.

 

 

 

This test I use top-of-tree lldb, built on Ubuntu 12 with a native target.
Packet log edited to remove chaff.

 

(lldb) log enable gdb-remote packets

(lldb) process launch -s

Process 18766 launched: '/usr2/tedwood/lldb_test/factlin' (x86_64)

(lldb) process status

Process 18766 stopped

* thread #1, name = 'factlin', stop reason = signal SIGSTOP

    frame #0: 0x00007ffff7ddb6b0

->  0x7ffff7ddb6b0: movq   %rsp, %rdi

    0x7ffff7ddb6b3: callq  0x7ffff7ddf010

    0x7ffff7ddb6b8: movq   %rax, %r12

    0x7ffff7ddb6bb: movl   0x2215ff(%rip), %eax

(lldb) b main

<  15> send packet: $Z0,400586,1#4a

<   6> read packet: $OK#9a

Breakpoint 1: where = factlin`main + 22 at factorial.c:32, address =
0x0000000000400586

(lldb) br l

Current breakpoints:

1: name = 'main', locations = 1, resolved = 1, hit count = 0

  1.1: where = factlin`main + 22 at factorial.c:32, address =
0x0000000000400586, resolved, hit count = 0 

(lldb) image search-paths add /local /tmp

<  15> send packet: $z0,400586,1#6a

<   6> read packet: $OK#9a

<  15> send packet: $z0,400410,1#5c

<   6> read packet: $OK#9a

(lldb) br l

Current breakpoints:

1: name = 'main', locations = 1

  1.1: where = factlin`main + 22 at factorial.c:32, address =
factlin[0x0000000000400586], unresolved, hit count = 0 

(lldb) c

<   5> send packet: $c#63

Process 18766 resuming

Factorial of 10 is 3628800

<   7> read packet: $W00#b7

Process 18766 exited with status = 0 (0x00000000)

 

As you can see, the breakpoint at main was removed on lldb-server, but shows
as active in the breakpoint list. When I continue, the breakpoint isn't hit,
and the target runs to completion.

 

--

Qualcomm Innovation Center, Inc.

The Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a
Linux Foundation Collaborative Project

 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20161116/ebc0ceaa/attachment.html>


More information about the lldb-dev mailing list