Very nice! Look forward to seeing what you find.

> On Aug 28, 2017, at 12:58 PM, Chris Bieneman <cbiene...@apple.com> wrote:
> 
> I had a chance to look into this more, and I found a bug in the listen 
> behavior. I'm testing a solution to it now. Will post it if it resolves the 
> issue.
> 
> -Chris
> 
>> On Aug 25, 2017, at 10:36 AM, Greg Clayton via lldb-dev 
>> <lldb-dev@lists.llvm.org> wrote:
>> 
>> Maybe we can make it open only an IPv4 socket for lldb-server for now as a 
>> work around?
>> 
>>> On Aug 25, 2017, at 8:47 AM, Chris Bieneman <cbiene...@apple.com> wrote:
>>> 
>>> Since lldb-server only supports running on a limited set of host operating 
>>> systems it is hard for me to diagnose the issue completely, but I suspect 
>>> the problem is caused by the fact that the new listening code can open more 
>>> than one socket, and TCPSocket::GetLocalPortNumber() may be misbehaving.
>>> 
>>> I'm unlikely to have time to investigate further until next week, but it 
>>> should be possible to craft a unit test that verifies that 
>>> GetLocalPortNumber() returns non-zero on a socket that is listening before 
>>> a connection is established. That might reproduce the issue in a more easy 
>>> to debug environment.
>>> 
>>> -Chris
>>> 
>>>> On Aug 25, 2017, at 7:38 AM, Ramana via lldb-dev <lldb-dev@lists.llvm.org> 
>>>> wrote:
>>>> 
>>>> Ted, Greg,
>>>> 
>>>> I have built lldb tools @r300578 and the lldb-server is returning the
>>>> proper port number to lldb client and the remote debugging is working.
>>>> I have given the lldb-server log at the bottom of my reply.
>>>> 
>>>> So, it looks https://reviews.llvm.org/rL300579 (Update LLDB Host to
>>>> support IPv6 over TCP) is causing the issue.
>>>> 
>>>>> Ramana, can you stick in a log message to print port_cstr? I suspect it's 
>>>>> actually getting 0 back from lldb-server, which would tell us the error 
>>>>> is in the server code, not the client code.
>>>> 
>>>> Ted, I did that and actually the pipe read is returning zero port
>>>> number. So definitely the issue is on the server side.
>>>> 
>>>>  GDBRemoteCommunication::StartDebugserverProcess() port_cstr
>>>> before socket pipe read
>>>>  GDBRemoteCommunication::StartDebugserverProcess() port_cstr after
>>>> socket pipe read
>>>> 
>>>> 
>>>>> Ted's comments are correct and I am guessing we will find the 
>>>>> "lldb-server gdb-server" is not doing the right thing and it isn't 
>>>>> returning the correctly bound port.
>>>>> 
>>>>> When we are doing remote stuff we must use TCP so there should be 
>>>>> lldb-server should be opening a TCP socket, binding, listening and 
>>>>> accepting a connection from the remote LLDB.
>>>>> 
>>>>> Greg
>>>> 
>>>> Greg, thanks for the comments. Are you saying I should check what is
>>>> happening on the TCP socket side? How do I do it other than walking
>>>> through the code?
>>>> 
>>>> 
>>>> root@arria5:~# /mnt/var/patch_bins/binaries/bin/lldb-server platform
>>>> --log-file Ramana/remote.log --log-channels "gdb-remote process"
>>>> --server --listen *:1400
>>>> Connection established.
>>>> error: lost connection
>>>> lldb-server exiting...
>>>> ^C
>>>> root@arria5:~# /mnt/var/patch_bins/binaries/bin/lldb --version
>>>> lldb version 5.0.0 (https://llvm.org/svn/llvm-project/lldb/trunk
>>>> revision 300578)
>>>> clang revision 300578
>>>> llvm revision 300578
>>>> root@arria5:~# cat Ramana/remote.log
>>>> GDBRemoteCommunication::StartDebugserverProcess(url=tcp://10.10.12.3:0, 
>>>> port=0)
>>>> GDBRemoteCommunication::StartDebugserverProcess() found gdb-remote
>>>> stub exe '/mnt/var/patch_bins/binaries/bin/lldb-server'
>>>> launch info for gdb-remote stub:
>>>> Executable: lldb-server
>>>> Triple: *-*-*
>>>> Arguments:
>>>> argv[0]="/mnt/var/patch_bins/binaries/bin/lldb-server"
>>>> argv[1]="gdbserver"
>>>> argv[2]="tcp://10.10.12.3:0"
>>>> argv[3]="--native-regs"
>>>> argv[4]="--pipe"
>>>> argv[5]="7"
>>>> argv[6]=NULL
>>>> 
>>>> Environment:
>>>> env[0]="XDG_SESSION_ID=c7"
>>>> env[1]="TERM=xterm-256color"
>>>> env[2]="SHELL=/bin/sh"
>>>> env[3]="SSH_CLIENT=172.16.16.51 40072 22"
>>>> env[4]="SSH_TTY=/dev/pts/0"
>>>> env[5]="USER=root"
>>>> env[6]="MAIL=/var/mail/root"
>>>> env[7]="PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin"
>>>> env[8]="PWD=/home/root"
>>>> env[9]="EDITOR=vi"
>>>> env[10]="PS1=\u@\h:\w\$ "
>>>> env[11]="SHLVL=1"
>>>> env[12]="HOME=/home/root"
>>>> env[13]="LOGNAME=root"
>>>> env[14]="SSH_CONNECTION=172.16.16.51 40072 10.10.2.4 22"
>>>> env[15]="XDG_RUNTIME_DIR=/run/user/0"
>>>> env[16]="_=/mnt/var/patch_bins/binaries/bin/lldb-server"
>>>> env[17]=NULL
>>>> 
>>>> GDBRemoteCommunication::StartDebugserverProcess() debugserver listens 
>>>> 48039 port
>>>> 
>>>> 
>>>> Regards,
>>>> Ramana
>>>> 
>>>> On Thu, Aug 24, 2017 at 10:10 PM, Greg Clayton <clayb...@gmail.com> wrote:
>>>>> 
>>>>>> On Aug 24, 2017, at 8:33 AM, Ted Woodward <ted.woodw...@codeaurora.org> 
>>>>>> wrote:
>>>>>> 
>>>>>> The lldb-server launch line looks ok; it should take the port 0 arg and 
>>>>>> get a port from the OS.
>>>>>> lldb is getting the port back from lldb-server in 4.0.1, as seen here:
>>>>>> 
>>>>>>> GDBRemoteCommunication::StartDebugserverProcess() debugserver listens 
>>>>>>> 56543 port
>>>>>> 
>>>>>> But for 5.0.0 we see it fail the debugserver launch, and get:
>>>>>> 
>>>>>>> GDBRemoteCommunication::StartDebugserverProcess() debugserver listens 0 
>>>>>>> port
>>>>>> 
>>>>>> That log message comes right after the pipe read, which succeeds because 
>>>>>> error.Success() is true:
>>>>>> 
>>>>>>    // Read port from pipe with 10 second timeout.
>>>>>>    error = socket_pipe.ReadWithTimeout(
>>>>>>        port_cstr, num_bytes, std::chrono::seconds{10}, num_bytes);
>>>>>>    if (error.Success() && (port != nullptr)) {
>>>>>>      assert(num_bytes > 0 && port_cstr[num_bytes - 1] == '\0');
>>>>>>      uint16_t child_port = StringConvert::ToUInt32(port_cstr, 0);
>>>>>>      if (*port == 0 || *port == child_port) {
>>>>>>        *port = child_port;
>>>>>>        if (log)
>>>>>>          log->Printf("GDBRemoteCommunication::%s() "
>>>>>>                      "debugserver listens %u port",
>>>>>>                      __FUNCTION__, *port);
>>>>>> 
>>>>>> As an aside, I don't like that assert - if we get garbage back from the 
>>>>>> pipe, we should error out, not take down lldb.
>>>>> 
>>>>> The assert should be removed and the code should work correctly without 
>>>>> the assert.
>>>>> 
>>>>>> Another aside, the definition of port_cstr is odd:
>>>>>>    char port_cstr[PATH_MAX] = {0};
>>>>>>    port_cstr[0] = '\0';
>>>>>> The size is way to big - max port number is 65535, so we don't need 
>>>>>> PATH_MAX bytes. And 2 assignments to make it a null string?
>>>>>> 
>>>>>> 
>>>>>> Ramana, can you stick in a log message to print port_cstr? I suspect 
>>>>>> it's actually getting 0 back from lldb-server, which would tell us the 
>>>>>> error is in the server code, not the client code.
>>>>>> 
>>>>> 
>>>>> With the following args:
>>>>> 
>>>>> argv[0]="/mnt/var/binaries/arm_release/bin/lldb-server"
>>>>> argv[1]="gdbserver"
>>>>> argv[2]="tcp://10.10.12.3:0"
>>>>> argv[3]="--native-regs"
>>>>> argv[4]="--pipe"
>>>>> argv[5]="7"
>>>>> argv[6]=NULL
>>>>> 
>>>>> lldb-server should bind to port 0, figure out the port, and write the 
>>>>> port number into the file descriptor 7 ("--pipe 7" argument) to let the 
>>>>> other side know what port to report back to the remote LLDB. The reply to 
>>>>> the qLaunchGDBServer packet should then contain this valid port number.
>>>>> 
>>>>> Ted's comments are correct and I am guessing we will find the 
>>>>> "lldb-server gdb-server" is not doing the right thing and it isn't 
>>>>> returning the correctly bound port.
>>>>> 
>>>>> When we are doing remote stuff we must use TCP so there should be 
>>>>> lldb-server should be opening a TCP socket, binding, listening and 
>>>>> accepting a connection from the remote LLDB.
>>>>> 
>>>>> Greg
>>>>> 
>>>>> 
>>>>> 
>>>>>> Ted
>>>>>> 
>>>>>> --
>>>>>> Qualcomm Innovation Center, Inc.
>>>>>> The Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a 
>>>>>> Linux Foundation Collaborative Project
>>>>>> 
>>>>>>> -----Original Message-----
>>>>>>> From: Ramana [mailto:ramana.venka...@gmail.com]
>>>>>>> Sent: Thursday, August 24, 2017 4:00 AM
>>>>>>> To: Ted Woodward <ted.woodw...@codeaurora.org>
>>>>>>> Cc: Greg Clayton <clayb...@gmail.com>; Hans Wennborg
>>>>>>> <h...@chromium.org>; lldb-dev@lists.llvm.org
>>>>>>> Subject: Re: [lldb-dev] Remote debugging ARM target from x86 host
>>>>>>> 
>>>>>>> Greg, Ted
>>>>>>> 
>>>>>>> Thanks for your comments.
>>>>>>> 
>>>>>>> On Thu, Aug 24, 2017 at 12:01 AM, Ted Woodward
>>>>>>> <ted.woodw...@codeaurora.org> wrote:
>>>>>>>> 
>>>>>>>> What should be happening is Handle_qLaunchGDBServer calls
>>>>>>> LaunchGDBServer with a port of UINT16_MAX, which tells it to use a port 
>>>>>>> in its
>>>>>>> port list. It shouldn't have a port list, so should return 0. 
>>>>>>> LaunchGDBServer calls
>>>>>>> StartDebugServerProcess with a port of 0 in the url. 
>>>>>>> StartDebugServerProcess
>>>>>>> launches the gdbserver with a named pipe, and reads the actual port 
>>>>>>> from the
>>>>>>> pipe.
>>>>>>> 
>>>>>>> Yes, the port list is empty unless --(min/max)-gdbserver-port is 
>>>>>>> specified and
>>>>>>> the gdbserver reads port number from the named pipe which in the 
>>>>>>> failing case
>>>>>>> is zero.
>>>>>>> 
>>>>>>>> I suggest turning on more logging - specifically, "gdb-remote 
>>>>>>>> process". That's
>>>>>>> the channel used in StartDebugServerProcess.
>>>>>>>> 
>>>>>>> 
>>>>>>> In fact I have given the relevant log line of "gdb-remote process" in 
>>>>>>> the bug
>>>>>>> details reporting port zero. Anyhow, the full log of "gdb-remote 
>>>>>>> process" for
>>>>>>> both lldb v4.0.1 and v5.0.0 is given at the bottom of my reply.
>>>>>>> 
>>>>>>> I thought https://reviews.llvm.org/rL295947 (Ensure lldb-server waits 
>>>>>>> for child
>>>>>>> debug servers to start up when passing them) got something to do with 
>>>>>>> this bug
>>>>>>> but both reversing
>>>>>>> 
>>>>>>> if (pass_comm_fd == -1) {   at
>>>>>>> source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp:1086
>>>>>>> 
>>>>>>> to original
>>>>>>> 
>>>>>>> if (pass_comm_fd == -1 && ((port != nullptr && *port == 0) || port ==
>>>>>>> nullptr)) {
>>>>>>> 
>>>>>>> and
>>>>>>> 
>>>>>>> increasing the time out to 30 sec from 10 sec in
>>>>>>> socket_pipe.ReadWithTimeout()    at
>>>>>>> source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp:1255
>>>>>>> 
>>>>>>> did not solve the issue.
>>>>>>> 
>>>>>>> By the way, the remote debugging of x86 (linux) from x86 (linux) with 
>>>>>>> lldb
>>>>>>> v5.0.0 (but works with v4.0.1) also fails with assertion
>>>>>>> 
>>>>>>> assert(num_bytes > 0 && port_cstr[num_bytes - 1] == '\0');  at
>>>>>>> source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp:1258
>>>>>>> 
>>>>>>> due to the reason that socket_pipe.ReadWithTimeout() could not 
>>>>>>> successfully
>>>>>>> read the port number from the named pipe.
>>>>>>> 
>>>>>>> Based on the above, though I am not sure, the other patch I could think 
>>>>>>> of
>>>>>>> having an effect on this bug is
>>>>>>> https://reviews.llvm.org/rL300579 (Update LLDB Host to support IPv6 
>>>>>>> over TCP)
>>>>>>> which changed the socket implementation.
>>>>>>> 
>>>>>>> 
>>>>>>> lldb-server log for "gdb-remote process" with lldb v4.0.1 (passing case)
>>>>>>> 
>>>>>>> GDBRemoteCommunication::StartDebugserverProcess(url=tcp://10.10.12.3:0,
>>>>>>> port=0)
>>>>>>> GDBRemoteCommunication::StartDebugserverProcess() found gdb-remote stub
>>>>>>> exe '/mnt/var/binaries/arm_release/bin/lldb-server'
>>>>>>> launch info for gdb-remote stub:
>>>>>>> Executable: lldb-server
>>>>>>> Triple: *-*-*
>>>>>>> Arguments:
>>>>>>> argv[0]="/mnt/var/binaries/arm_release/bin/lldb-server"
>>>>>>> argv[1]="gdbserver"
>>>>>>> argv[2]="tcp://10.10.12.3:0"
>>>>>>> argv[3]="--native-regs"
>>>>>>> argv[4]="--pipe"
>>>>>>> argv[5]="7"
>>>>>>> argv[6]=NULL
>>>>>>> 
>>>>>>> Environment:
>>>>>>> env[0]="XDG_SESSION_ID=c3"
>>>>>>> env[1]="TERM=xterm-256color"
>>>>>>> env[2]="SHELL=/bin/sh"
>>>>>>> env[3]="SSH_CLIENT=10.10.33.99 53542 22"
>>>>>>> env[4]="SSH_TTY=/dev/pts/0"
>>>>>>> env[5]="USER=root"
>>>>>>> env[6]="MAIL=/var/mail/root"
>>>>>>> env[7]="PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin"
>>>>>>> env[8]="PWD=/home/root"
>>>>>>> env[9]="EDITOR=vi"
>>>>>>> env[10]="PS1=\u@\h:\w\$ "
>>>>>>> env[11]="SHLVL=1"
>>>>>>> env[12]="HOME=/home/root"
>>>>>>> env[13]="LOGNAME=root"
>>>>>>> env[14]="SSH_CONNECTION=10.10.33.99 53542 10.10.2.4 22"
>>>>>>> env[15]="XDG_RUNTIME_DIR=/run/user/0"
>>>>>>> env[16]="_=/mnt/var/binaries/arm_release/bin/lldb-server"
>>>>>>> env[17]=NULL
>>>>>>> 
>>>>>>> GDBRemoteCommunication::StartDebugserverProcess() debugserver listens
>>>>>>> 56543 port
>>>>>>> 
>>>>>>> 
>>>>>>> lldb-server log for "gdb-remote process" with lldb v5.0.0 (failing case)
>>>>>>> 
>>>>>>> 
>>>>>>> GDBRemoteCommunication::StartDebugserverProcess(url=tcp://10.10.12.3:0,
>>>>>>> port=0)
>>>>>>> GDBRemoteCommunication::StartDebugserverProcess() found gdb-remote stub
>>>>>>> exe '/mnt/var/binaries/arm_v5.0_orig/bin/lldb-server'
>>>>>>> launch info for gdb-remote stub:
>>>>>>> Executable: lldb-server
>>>>>>> Triple: *-*-*
>>>>>>> Arguments:
>>>>>>> argv[0]="/mnt/var/binaries/arm_v5.0_orig/bin/lldb-server"
>>>>>>> argv[1]="gdbserver"
>>>>>>> argv[2]="tcp://10.10.12.3:0"
>>>>>>> argv[3]="--native-regs"
>>>>>>> argv[4]="--pipe"
>>>>>>> argv[5]="7"
>>>>>>> argv[6]=NULL
>>>>>>> 
>>>>>>> Environment:
>>>>>>> env[0]="XDG_SESSION_ID=c3"
>>>>>>> env[1]="TERM=xterm-256color"
>>>>>>> env[2]="SHELL=/bin/sh"
>>>>>>> env[3]="SSH_CLIENT=10.10.33.99 53542 22"
>>>>>>> env[4]="SSH_TTY=/dev/pts/0"
>>>>>>> env[5]="USER=root"
>>>>>>> env[6]="MAIL=/var/mail/root"
>>>>>>> env[7]="PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin"
>>>>>>> env[8]="PWD=/home/root"
>>>>>>> env[9]="EDITOR=vi"
>>>>>>> env[10]="PS1=\u@\h:\w\$ "
>>>>>>> env[11]="SHLVL=1"
>>>>>>> env[12]="HOME=/home/root"
>>>>>>> env[13]="LOGNAME=root"
>>>>>>> env[14]="SSH_CONNECTION=10.10.33.99 53542 10.10.2.4 22"
>>>>>>> env[15]="XDG_RUNTIME_DIR=/run/user/0"
>>>>>>> env[16]="_=/mnt/var/binaries/arm_v5.0_orig/bin/lldb-server"
>>>>>>> env[17]=NULL
>>>>>>> 
>>>>>>> GDBRemoteCommunication::StartDebugserverProcess() debugserver listens 0
>>>>>>> port
>>>>>>> 
>>>>>>> 
>>>>>>> Thanks,
>>>>>>> Ramana
>>>>>>> 
>>>>>>>> --
>>>>>>>> Qualcomm Innovation Center, Inc.
>>>>>>>> The Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
>>>>>>>> a Linux Foundation Collaborative Project
>>>>>>>> 
>>>>>>>>> -----Original Message-----
>>>>>>>>> From: lldb-dev [mailto:lldb-dev-boun...@lists.llvm.org] On Behalf Of
>>>>>>>>> Greg Clayton via lldb-dev
>>>>>>>>> Sent: Wednesday, August 23, 2017 12:45 PM
>>>>>>>>> To: Hans Wennborg <h...@chromium.org>
>>>>>>>>> Cc: Ramana <ramana.venka...@gmail.com>; LLDB Dev <lldb-
>>>>>>>>> d...@lists.llvm.org>
>>>>>>>>> Subject: Re: [lldb-dev] Remote debugging ARM target from x86 host
>>>>>>>>> 
>>>>>>>>> Port zero should never be returned as a valid port. We do bind to
>>>>>>>>> port zero just so we don't try and pick a port at random just to find
>>>>>>>>> it is being used. When we bind to port 9, we must find the actual
>>>>>>>>> port we bound to and return that. Seems something has gone wrong with
>>>>>>>>> the code that discovers the port that was actually bound and is not 
>>>>>>>>> reporting
>>>>>>> that back correctly.
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> Should be straight forward to do by debugging the function
>>>>>>>>> GDBRemoteCommunicationServerPlatform::Handle_qLaunchGDBServer(...)
>>>>>>> in
>>>>>>>>> GDBRemoteCommunicationServerPlatform.cpp and see what is going on
>>>>>>> and
>>>>>>>>> why it is returning 0 as the port.
>>>>>>>>> 
>>>>>>>>> Greg
>>>>>>>>> 
>>>>>>>>>> On Aug 23, 2017, at 9:44 AM, Hans Wennborg via lldb-dev <lldb-
>>>>>>>>> d...@lists.llvm.org> wrote:
>>>>>>>>>> 
>>>>>>>>>> This was marked as an lldb 5.0.0 release blocker since it's a
>>>>>>>>>> regression from 4.0.1: https://bugs.llvm.org/show_bug.cgi?id=34183
>>>>>>>>>> 
>>>>>>>>>> lldb-dev: Is there any interest in fixing this bug?
>>>>>>>>>> 
>>>>>>>>>> On Fri, Aug 4, 2017 at 10:13 PM, Ramana via lldb-dev
>>>>>>>>>> <lldb-dev@lists.llvm.org> wrote:
>>>>>>>>>>> Hi,
>>>>>>>>>>> 
>>>>>>>>>>> I am trying to remote debug ARM (linux) target from x86 (linux)
>>>>>>>>>>> host and I am getting the following error while trying to launch a 
>>>>>>>>>>> process.
>>>>>>>>>>> The local debugging on ARM works.
>>>>>>>>>>> 
>>>>>>>>>>> error: connect remote failed (invalid host:port specification:
>>>>>>>>>>> '10.10.2.3')
>>>>>>>>>>> error: process launch failed: invalid host:port specification: 
>>>>>>>>>>> '10.10.2.3'
>>>>>>>>>>> 
>>>>>>>>>>> It appears the above error is because the gdb-remote is returning
>>>>>>>>>>> the communication port as zero.
>>>>>>>>>>> 
>>>>>>>>>>> <  36> send packet: $qLaunchGDBServer;host:svrlin249;#bb
>>>>>>>>>>> <  19> read packet: $pid:298;port:0;#bf
>>>>>>>>>>> 
>>>>>>>>>>> What are the possible reasons for the above behavior from
>>>>>>>>>>> gdb-remote and how I could resolve this?
>>>>>>>>>>> 
>>>>>>>>>>> If it helps, below is the full log.
>>>>>>>>>>> 
>>>>>>>>>>> (lldb) log enable lldb comm
>>>>>>>>>>> (lldb) log enable gdb-remote packets
>>>>>>>>>>> (lldb) platform select remote-linux
>>>>>>>>>>> Platform: remote-linux
>>>>>>>>>>> Connected: no
>>>>>>>>>>> (lldb) platform connect connect://10.10.2.3:500
>>>>>>>>>>> 0x915bd78 Communication::Communication (name = gdb-remote.client)
>>>>>>>>>>> 0x915bd78 Communication::Disconnect ()
>>>>>>>>>>> 0x915bd78 Communication::Disconnect ()
>>>>>>>>>>> 0x915bd78 Communication::Connect (url = connect://10.10.2.3:500)
>>>>>>>>>>> Socket::TcpConnect (host/port = 10.10.2.3:500) TCPSocket::Connect
>>>>>>>>>>> (host/port = 10.10.2.3:500)
>>>>>>>>>>> 0x915bd78 Communication::Write (src = 0xbfcb7433, src_len = 1)
>>>>>>>>>>> connection = 0x915f578
>>>>>>>>>>> 0x915f608 Socket::Write() (socket = 7, src = 0xbfcb7433, src_len =
>>>>>>>>>>> 1, flags = 0) => 1 (error = (null))
>>>>>>>>>>> <   1> send packet: +
>>>>>>>>>>> this = 0x0915BD78, dst = 0xBFCB53EC, dst_len = 8192, timeout =
>>>>>>>>>>> 10000 us, connection = 0x0915F578
>>>>>>>>>>> 0x915bd78 Communication::Write (src = 0x916022c, src_len = 19)
>>>>>>>>>>> connection = 0x915f578
>>>>>>>>>>> 0x915f608 Socket::Write() (socket = 7, src = 0x916022c, src_len =
>>>>>>>>>>> 19, flags = 0) => 19 (error = (null))
>>>>>>>>>>> history[1] tid=0x7cbf <   1> send packet: +
>>>>>>>>>>> <  19> send packet: $QStartNoAckMode#b0 this = 0x0915BD78, dst =
>>>>>>>>>>> 0xBFCB51AC, dst_len = 8192, timeout = 6000000 us, connection =
>>>>>>>>>>> 0x0915F578
>>>>>>>>>>> 0x915f608 Socket::Read() (socket = 7, src = 0xbfcb51ac, src_len =
>>>>>>>>>>> 7, flags = 0) => 7 (error = (null))
>>>>>>>>>>> <   1> read packet: +
>>>>>>>>>>> <   6> read packet: $OK#9a
>>>>>>>>>>> 0x915bd78 Communication::Write (src = 0xbfcb50f3, src_len = 1)
>>>>>>>>>>> connection = 0x915f578
>>>>>>>>>>> 0x915f608 Socket::Write() (socket = 7, src = 0xbfcb50f3, src_len =
>>>>>>>>>>> 1, flags = 0) => 1 (error = (null))
>>>>>>>>>>> <   1> send packet: +
>>>>>>>>>>> 0x915bd78 Communication::Write (src = 0x9161ff4, src_len = 13)
>>>>>>>>>>> connection = 0x915f578
>>>>>>>>>>> 0x915f608 Socket::Write() (socket = 7, src = 0x9161ff4, src_len =
>>>>>>>>>>> 13, flags = 0) => 13 (error = (null)) <  13> send packet:
>>>>>>>>>>> $qHostInfo#9b this = 0x0915BD78, dst = 0xBFCB510C, dst_len = 8192,
>>>>>>>>>>> timeout =
>>>>>>>>>>> 1000000 us, connection = 0x0915F578
>>>>>>>>>>> 0x915f608 Socket::Read() (socket = 7, src = 0xbfcb510c, src_len =
>>>>>>>>>>> 316, flags = 0) => 316 (error = (null)) < 316> read packet:
>>>>>>>>>>> 
>>>>>>>>> 
>>>>>>> $triple:61726d2d2d6c696e75782d676e75656162696866;ptrsize:4;watchpoint
>>>>>>>>>>> _exceptions_received:before;endian:little;os_version:3.10.31;os_bu
>>>>>>>>>>> ild
>>>>>>>>>>> 
>>>>>>>>> 
>>>>>>> :332e31302e33312d6c7473692d30323836312d6738303161343066;os_kernel:2
>>>>>>>>> 33
>>>>>>>>>>> 
>>>>>>>>> 
>>>>>>> 520534d5020467269204d61792031332031353a35383a3232204953542032303
>>>>>>>>> 136;h
>>>>>>>>>>> ostname:736f
>>>>>>>>>>> 63667067615f617272696135;#0a
>>>>>>>>>>> 0x915bd78 Communication::Write (src = 0x915fe9c, src_len = 18)
>>>>>>>>>>> connection = 0x915f578
>>>>>>>>>>> 0x915f608 Socket::Write() (socket = 7, src = 0x915fe9c, src_len =
>>>>>>>>>>> 18, flags = 0) => 18 (error = (null)) <  18> send packet:
>>>>>>>>>>> $qGetWorkingDir#91 this = 0x0915BD78, dst = 0xBFCB50FC, dst_len =
>>>>>>>>>>> 8192, timeout = 1000000 us, connection = 0x0915F578
>>>>>>>>>>> 0x915f608 Socket::Read() (socket = 7, src = 0xbfcb50fc, src_len =
>>>>>>>>>>> 24, flags = 0) => 24 (error = (null)) <  24> read packet:
>>>>>>>>>>> $2f686f6d652f726f6f74#4b
>>>>>>>>>>> 0x915bd78 Communication::Write (src = 0x915fe9c, src_len = 19)
>>>>>>>>>>> connection = 0x915f578
>>>>>>>>>>> 0x915f608 Socket::Write() (socket = 7, src = 0x915fe9c, src_len =
>>>>>>>>>>> 19, flags = 0) => 19 (error = (null)) <  19> send packet:
>>>>>>>>>>> $qQueryGDBServer#cb this = 0x0915BD78, dst = 0xBFCB531C, dst_len =
>>>>>>>>>>> 8192, timeout = 1000000 us, connection = 0x0915F578
>>>>>>>>>>> 0x915f608 Socket::Read() (socket = 7, src = 0xbfcb531c, src_len =
>>>>>>>>>>> 7, flags = 0) => 7 (error = (null))
>>>>>>>>>>> <   7> read packet: $E04#a9
>>>>>>>>>>> Platform: remote-linux
>>>>>>>>>>> Triple: arm-*-linux-gnueabihf
>>>>>>>>>>> OS Version: 3.10.31 (3.10.31-ltsi-02861-g801a40f)
>>>>>>>>>>> Kernel: #5 SMP Fri May 13 15:58:22 IST 2016
>>>>>>>>>>> Hostname: socfpga_arria5
>>>>>>>>>>> Connected: yes
>>>>>>>>>>> WorkingDir: /home/root
>>>>>>>>>>> (lldb) file main
>>>>>>>>>>> 0x915bd78 Communication::Write (src = 0x91638fc, src_len = 137)
>>>>>>>>>>> connection = 0x915f578
>>>>>>>>>>> 0x915f608 Socket::Write() (socket = 7, src = 0x91638fc, src_len =
>>>>>>>>>>> 137, flags = 0) => 137 (error = (null)) < 137> send packet:
>>>>>>>>>>> 
>>>>>>>>> 
>>>>>>> $qModuleInfo:2f686f6d652f72616d616e616e2f776f726b5f726f6f742f546f545f
>>>>>>>>>>> 
>>>>>>>>> 
>>>>>>> 6c6c64622f74657374732f6d61696e;61726d2d2d6c696e75782d656162696866#
>>>>>>>>> f1
>>>>>>>>>>> this = 0x0915BD78, dst = 0xBFCB172C, dst_len = 8192, timeout =
>>>>>>>>>>> 1000000 us, connection = 0x0915F578
>>>>>>>>>>> 0x915f608 Socket::Read() (socket = 7, src = 0xbfcb172c, src_len =
>>>>>>>>>>> 7, flags = 0) => 7 (error = (null))
>>>>>>>>>>> <   7> read packet: $E03#a8
>>>>>>>>>>> Current executable set to 'main' (arm).
>>>>>>>>>>> (lldb) b main
>>>>>>>>>>> Breakpoint 1: where = main`main + 4 at main.c:4, address =
>>>>>>>>>>> 0x000104a0
>>>>>>>>>>> (lldb) run
>>>>>>>>>>> 0x915bd78 Communication::Write (src = 0x917bae4, src_len = 36)
>>>>>>>>>>> connection = 0x915f578
>>>>>>>>>>> 0x915f608 Socket::Write() (socket = 7, src = 0x917bae4, src_len =
>>>>>>>>>>> 36, flags = 0) => 36 (error = (null)) <  36> send packet:
>>>>>>>>>>> $qLaunchGDBServer;host:svrlin249;#bb
>>>>>>>>>>> this = 0x0915BD78, dst = 0xBFCB4FDC, dst_len = 8192, timeout =
>>>>>>>>>>> 10000000 us, connection = 0x0915F578
>>>>>>>>>>> 0x915f608 Socket::Read() (socket = 7, src = 0xbfcb4fdc, src_len =
>>>>>>>>>>> 19, flags = 0) => 19 (error = (null)) <  19> read packet:
>>>>>>>>>>> $pid:298;port:0;#bf
>>>>>>>>>>> 0x92b0a84 Communication::Communication (name = process.stdio)
>>>>>>>>>>> 0x92b0d78 Communication::Communication (name = gdb-remote.client)
>>>>>>>>>>> 0x92b0a84 Communication::Disconnect () Socket::TcpConnect
>>>>>>>>>>> (host/port = 10.10.2.3) TCPSocket::Connect (host/port = 10.10.2.3)
>>>>>>>>>>> Socket::TcpConnect (host/port = 10.10.2.3) TCPSocket::Connect
>>>>>>>>>>> (host/port = 10.10.2.3) Socket::TcpConnect (host/port = 10.10.2.3)
>>>>>>>>>>> TCPSocket::Connect (host/port = 10.10.2.3) Socket::TcpConnect
>>>>>>>>>>> (host/port = 10.10.2.3) TCPSocket::Connect (host/port = 10.10.2.3)
>>>>>>>>>>> Socket::TcpConnect (host/port = 10.10.2.3) TCPSocket::Connect
>>>>>>>>>>> (host/port = 10.10.2.3) Socket::TcpConnect (host/port = 10.10.2.3)
>>>>>>>>>>> TCPSocket::Connect (host/port = 10.10.2.3) Socket::TcpConnect
>>>>>>>>>>> (host/port = 10.10.2.3) TCPSocket::Connect (host/port = 10.10.2.3)
>>>>>>>>>>> Socket::TcpConnect (host/port = 10.10.2.3) ..................
>>>>>>>>>>> ..................
>>>>>>>>>>> ..................
>>>>>>>>>>> TCPSocket::Connect (host/port = 10.10.2.3) Socket::TcpConnect
>>>>>>>>>>> (host/port = 10.10.2.3) TCPSocket::Connect (host/port = 10.10.2.3)
>>>>>>>>>>> Socket::TcpConnect (host/port = 10.10.2.3) TCPSocket::Connect
>>>>>>>>>>> (host/port = 10.10.2.3) Socket::TcpConnect (host/port = 10.10.2.3)
>>>>>>>>>>> TCPSocket::Connect (host/port = 10.10.2.3) Socket::TcpConnect
>>>>>>>>>>> (host/port = 10.10.2.3) TCPSocket::Connect (host/port = 10.10.2.3)
>>>>>>>>>>> Socket::TcpConnect (host/port = 10.10.2.3) TCPSocket::Connect
>>>>>>>>>>> (host/port = 10.10.2.3)
>>>>>>>>>>> error: connect remote failed (invalid host:port specification:
>>>>>>>>>>> '10.10.2.3')
>>>>>>>>>>> 0x915bd78 Communication::Write (src = 0x92b38c4, src_len = 27)
>>>>>>>>>>> connection = 0x915f578
>>>>>>>>>>> 0x915f608 Socket::Write() (socket = 7, src = 0x92b38c4, src_len =
>>>>>>>>>>> 27, flags = 0) => 27 (error = (null)) <  27> send packet:
>>>>>>>>>>> $qKillSpawnedProcess:298#8b this = 0x0915BD78, dst = 0xBFCB509C,
>>>>>>>>>>> dst_len = 8192, timeout = 1000000 us, connection = 0x0915F578
>>>>>>>>>>> 0x915f608 Socket::Read() (socket = 7, src = 0xbfcb509c, src_len =
>>>>>>>>>>> 7, flags = 0) => 7 (error = (null))
>>>>>>>>>>> <   7> read packet: $E0a#d6
>>>>>>>>>>> error: process launch failed: invalid host:port specification: 
>>>>>>>>>>> '10.10.2.3'
>>>>>>>>>>> (lldb)
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> Regards,
>>>>>>>>>>> Ramana
>>>>>>>>>>> _______________________________________________
>>>>>>>>>>> lldb-dev mailing list
>>>>>>>>>>> lldb-dev@lists.llvm.org
>>>>>>>>>>> http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev
>>>>>>>>>> _______________________________________________
>>>>>>>>>> lldb-dev mailing list
>>>>>>>>>> lldb-dev@lists.llvm.org
>>>>>>>>>> http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev
>>>>>>>>> 
>>>>>>>>> _______________________________________________
>>>>>>>>> lldb-dev mailing list
>>>>>>>>> lldb-dev@lists.llvm.org
>>>>>>>>> http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev
>>>>>>>> 
>>>>>> 
>>>>> 
>>>> _______________________________________________
>>>> lldb-dev mailing list
>>>> lldb-dev@lists.llvm.org
>>>> http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev
>>> 
>> 
>> _______________________________________________
>> lldb-dev mailing list
>> lldb-dev@lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev
> 

_______________________________________________
lldb-dev mailing list
lldb-dev@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev

Reply via email to