<div dir="ltr">> <span style="font-family:arial,sans-serif;font-size:13px">Send a “WXX” packet to indicate the program exited.</span><div><span style="font-family:arial,sans-serif;font-size:13px"><br></span></div><div><div>
<font face="arial, sans-serif">Thank you. Sending the "WXX"” packet to indicate the program exited worked. I received the following message at the lldb prompt.</font></div><div><font face="arial, sans-serif"><br>
</font></div><div><font face="arial, sans-serif">Process 1 exited with status = 0</font></div><div><font face="arial, sans-serif"><br></font></div><div><font face="arial, sans-serif">And now to restart the application I gave the 'run' command for which I received the error "'A' packet returned an error: -1". When I checked the simulator for this I found that the simulator didn't receive the 'A' packet. </font></div>
<div><font face="arial, sans-serif"><br></font></div><div><font face="arial, sans-serif">When debugged the lldb, I found that the problem is with the platform that has been chosen for my target. I had made platform "gdb-server" as my default platform explicitly by modifying the "PlatformRemoteGDBServer::Initialize ()" method. </font></div>
<div><font face="arial, sans-serif"><br></font></div><div><font face="arial, sans-serif">$ lldb --arch vliw workplace/app.elf </font></div><div><font face="arial, sans-serif">Current executable set to 'workplace/app.elf' (vliw).</font></div>
<div><font face="arial, sans-serif">(lldb) target list</font></div><div><font face="arial, sans-serif">Current targets:</font></div><div><font face="arial, sans-serif">* target #0: /home/chandra/app01/workplace/app.elf ( arch=vliw-unknown-unknown, platform=remote-gdb-server )</font></div>
<div><font face="arial, sans-serif"><br></font></div><div><font face="arial, sans-serif">Since I was connecting the target simulator using the Process plugin 'gdb-remote', the platform "gdb-server" didn't come into picture of connecting the simulator. </font></div>
<div><font face="arial, sans-serif"><br></font></div><div><font face="arial, sans-serif">(lldb) process connect --plugin gdb-remote connect://localhost:51000</font></div><div><font face="arial, sans-serif"><br></font></div>
<div><font face="arial, sans-serif">The connection and the debugging happened through the 'gdb-remote' Process plugin. And the problem comes when I restart the program after it terminates with an exit status. I.e. When I give the 'run' command to restart the program, the platform "gdb-server" sends the argument packet 'A' for program launching. But there is no connection associated with the platform "gdb-server". Hence lldb gives the following error:</font></div>
<div><font face="arial, sans-serif"><br></font></div><div><font face="arial, sans-serif">error: 'A' packet returned an error: -1</font></div><div><font face="arial, sans-serif"><br></font></div><div><font face="arial, sans-serif"><br>
</font></div><div><font face="arial, sans-serif">With my existing porting of lldb I am able to connect the simulator and successfully debug a program once. But I am not able to do the following:</font></div><div><font face="arial, sans-serif"><br>
</font></div><div><font face="arial, sans-serif">1. Restart the program for debugging with disconnecting the connection.</font></div><div><font face="arial, sans-serif">2. Send launch command to the simulator from lldb.</font></div>
<div><font face="arial, sans-serif"><br></font></div><div><font face="arial, sans-serif"><br></font></div><div><font face="arial, sans-serif">Can't I support the above two features from the 'gdb-remote' Process plugin? Can you please suggest the way of supporting the above two features?</font></div>
</div><div><font face="arial, sans-serif"><br></font></div><div style><font face="arial, sans-serif">Thanks,</font></div><div style><font face="arial, sans-serif">Chandra Kumar R.</font></div></div><div class="gmail_extra">
<br><br><div class="gmail_quote">On Sat, Aug 10, 2013 at 1:26 AM, Greg Clayton <span dir="ltr"><<a href="mailto:gclayton@apple.com" target="_blank">gclayton@apple.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im"><br>
On Aug 8, 2013, at 6:04 AM, chansarav <<a href="mailto:chansarav@gmail.com">chansarav@gmail.com</a>> wrote:<br>
<br>
> I have ported lldb for remotely debugging our target. The lldb is connected to the target simulator using the gdb remote protocol.<br>
><br>
> $lldb --arch vliw app.elf<br>
> (lldb)process connect --plugin gdb-remote connect://localhost:51000<br>
><br>
> The above command connects the lldb with the target simulator waiting at port '51000'. And the debug commands work properly.<br>
><br>
> But once the execution of the application completes, I am facing the problem in restarting the application for debugging again.<br>
><br>
> For restarting the application being debugged, I think lldb should send the 'R' packet. When would lldb send the 'R' packet?<br>
><br>
> Currently the target simulator sends the SIGTERM signal (T0fthread:0001) after completing the program execution. And on receiving this signal, lldb doesn't doesn't display the message "Program exited normally”.<br>

<br>
</div>The “T0F” means we stopped with a signal. Send a “WXX” packet to indicate the program exited.<br>
<div class="im">><br>
> Also when I gave the 'continue' command to restart the application debugging again, lldb sends the 'C0f' packet.<br>
<br>
</div>Yes, you indicated you stopped with a signal. We often catch signals before they get passed onto the signal handlers and we can decide to not pass on the signal. See “help process handle” for more information, but again, if your process exits with a signal, send a “WXX” packet where XX is the hex exit status of the program.<br>

<br>
Greg<br>
<br>
><br>
><br>
> Thanks,<br>
> Chandra Kumar R.<br>
> _______________________________________________<br>
> lldb-dev mailing list<br>
> <a href="mailto:lldb-dev@cs.uiuc.edu">lldb-dev@cs.uiuc.edu</a><br>
> <a href="http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev</a><br>
<br>
</blockquote></div><br></div>