<div dir="ltr">I noticed something that I've missed when sending the previous Email. Looking at the logs, I see LLDB sending "kill" command for no reason:<div><div><font face="courier new, monospace"><lldb.driver.main-thread> <  18> send packet: $m1039ede00,200#86</font></div>

<div><font face="courier new, monospace">  1 <lldb.driver.main-thread> <   1> read packet: +</font></div><div><font face="courier new, monospace">  0 <lldb.driver.main-thread> <1028> read packet: $4b4c5752000000000000000000000000c04e0000014e0000004e000000000000000000000000000010de9e030100000014de9e030100000018de9e030100000020</font></div>

<div><font face="courier new, monospace">  1 <lldb.driver.main-thread> <   1> send packet: +</font></div><div><font face="courier new, monospace">  2 <lldb.driver.main-thread> <  18> send packet: $m1038d4200,200#21</font></div>

<div><font face="courier new, monospace">  3 <lldb.driver.main-thread> <   1> read packet: +</font></div><div><font face="courier new, monospace">  4 <lldb.driver.main-thread> <1028> read packet: $e97bf4ffff6666666666662e0f1f8400000000009090909090909090909090909090909090909090909090909090909090909090909090909090909090909090e9</font></div>

<div><font face="courier new, monospace">  5 <lldb.driver.main-thread> <   1> send packet: +</font></div><div><font face="courier new, monospace">  6 <lldb.driver.main-thread> <  21> send packet: $Z0,7fff5fc0d6e5,1#de</font></div>

<div><font face="courier new, monospace">  7 <lldb.driver.main-thread> <   1> read packet: +</font></div><div><font face="courier new, monospace">  8 <lldb.driver.main-thread> <   6> read packet: $OK#9a</font></div>

<div><font face="courier new, monospace">  9 <lldb.driver.main-thread> <   1> send packet: +</font></div><div><font face="courier new, monospace"> 10 <lldb.driver.main-thread> <  16> send packet: $qfThreadInfo#bb</font></div>

<div><font face="courier new, monospace"> 11 <lldb.driver.main-thread> <   1> read packet: +</font></div><div><font face="courier new, monospace"> 12 <lldb.driver.main-thread> <   8> read packet: $m707#0b</font></div>

<div><font face="courier new, monospace"> 13 <lldb.driver.main-thread> <   1> send packet: +</font></div><div><font face="courier new, monospace"> 14 <lldb.driver.main-thread> <  16> send packet: $qsThreadInfo#c8</font></div>

<div><font face="courier new, monospace"> 15 <lldb.driver.main-thread> <   1> read packet: +</font></div><div><font face="courier new, monospace"> 16 <lldb.driver.main-thread> <   5> read packet: $l#6c</font></div>

<div><font face="courier new, monospace"> 17 <lldb.driver.main-thread> <   1> send packet: +</font></div><div><font face="courier new, monospace"> 18 <lldb.driver.main-thread> <  18> send packet: $z0,1005f00d7,1#5a</font></div>

<div><font face="courier new, monospace"> 19 <lldb.driver.main-thread> <   1> read packet: +</font></div><div><font face="courier new, monospace"> 20 <lldb.driver.main-thread> <   6> read packet: $OK#9a</font></div>

<div><font face="courier new, monospace"> 21 <lldb.driver.main-thread> <   1> send packet: +</font></div><div><font face="courier new, monospace"> 22 <lldb.driver.main-thread> <  21> send packet: $z0,7fff5fc0d6e5,1#fe</font></div>

<div><font face="courier new, monospace"> 23 <lldb.driver.main-thread> <   1> read packet: +</font></div><div><font face="courier new, monospace"> 24 <lldb.driver.main-thread> <   6> read packet: $OK#9a</font></div>

<div><font face="courier new, monospace"> 25 <lldb.driver.main-thread> <   1> send packet: +</font></div><div><font face="courier new, monospace"> <span style="background-color:rgb(0,255,0)">26 <lldb.driver.main-thread> <   5> send packet: $k#6b</span></font></div>

<div><font face="courier new, monospace"> 27 <lldb.driver.main-thread> <   1> read packet: +</font></div><div><font face="courier new, monospace"> 28 <lldb.driver.main-thread> <   6> read packet: $OK#9a</font></div>

<div><font face="courier new, monospace"> 29 <lldb.driver.main-thread> <   1> send packet: +</font></div><div><font face="courier new, monospace"> 30    6> send packet: $p2#a2</font></div><div><font face="courier new, monospace"> 31 <lldb.driver.main-thread> <   1> read packet: +</font></div>

<div><font face="courier new, monospace"> 32 <lldb.driver.main-thread> <   4> read packet: $#00</font></div><div><font face="courier new, monospace"> 33 <lldb.driver.main-thread> <   1> send packet: +</font></div>

<div><font face="courier new, monospace"> 34 <lldb.driver.main-thread> <   6> send packet: $p3#a3</font></div></div><div><br></div><div style>Here are my commands in the lldb console:</div><div style><div><font face="courier new, monospace">➜  build  lldb /bin/ls                                             </font></div>

<div><font face="courier new, monospace">Current executable set to '/bin/ls' (x86_64).</font></div><div><font face="courier new, monospace">(lldb) log enable -f /tmp/packets.txt  gdb-remote packets</font></div><div>

<font face="courier new, monospace">(lldb) process connect -p gdb-remote connect://localhost:58985</font></div><div><font face="courier new, monospace">Process 1799 stopped</font></div><div><font face="courier new, monospace">* thread #1: tid = 0x0707, , stop reason = signal SIGINT</font></div>

<div><font face="courier new, monospace">    frame #0: </font></div><div><font face="courier new, monospace">(lldb) </font></div><div><br></div><div style>Why might LLDB send the 'kill' command without "permission"? </div>

<div style><br></div><div style>The weird thing is that after it sends the kill command, it then start requesting for register values using the '$p' commands...</div><div style><br></div><div style>Any ideas why this is happening?</div>

<div style><br></div><div style>Regards,</div><div style>Benjamin.</div><div><br></div></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Sun, Feb 10, 2013 at 3:19 PM, Benjamin Kemper <span dir="ltr"><<a href="mailto:kemperbenny@gmail.com" target="_blank">kemperbenny@gmail.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Hi,</div><div><br></div>I'm implementing <span style="font-family:arial,sans-serif;font-size:13px">a debugger backend that implements the gdb remote protocol and adding extensions to support LLDB also.</span><div>


<span style="font-family:arial,sans-serif;font-size:13px"><br></span></div><div><span style="font-family:arial,sans-serif;font-size:13px">I've added support for the qRegisterInfo packet and I've noticed in the logs that LLDB uses the p/P packets instead of the G/g packets.</span></div>


<div><span style="font-family:arial,sans-serif;font-size:13px"><br></span></div><div><span style="font-family:arial,sans-serif;font-size:13px">Is there a special reason why it uses multiple packets instead of one?</span></div>


<div><span style="font-family:arial,sans-serif;font-size:13px"><br></span></div><div><span style="font-family:arial,sans-serif;font-size:13px">Maybe I didn't implement enough "information" packets and LLDB doesn't know how to read g/G packets? If so, what packets are missing?</span></div>


<div><span style="font-family:arial,sans-serif;font-size:13px"><br></span></div><div><span style="font-family:arial,sans-serif;font-size:13px">Thanks,</span></div><div><span style="font-family:arial,sans-serif;font-size:13px">Benjamin.</span></div>


</div>
</blockquote></div><br></div>