[Lldb-commits] [PATCH] D11150: [NativeProcessLinux] Integrate MainLoop

Chaoren Lin chaorenl at google.com
Fri Jul 24 11:17:08 PDT 2015


Hi Pavel,

I think this issue came back again.

I tried on Nexus Player and Nexus 9 and `process kill` gives the error:
```
Handle_k: failed to kill spawned pid <pid>, ignoring.
```
from lldb-server.

I think it might be a good idea if we archived stdout/stderr from
lldb-server too. Hopefully it'll be empty, but if we get errors like these,
we'll have a log.

On Thu, Jul 16, 2015 at 6:04 AM, Pavel Labath <labath at google.com> wrote:

> I've tracked the problem down. The issue was that after this patch,
> some things were happening in a slightly different order, and we were
> deadlocking while trying to shut down the stdio forwarding thread. I
> did not detect this when running locally, because the read thread is
> not used there. I have reverted this for now. I will first get rid of
> the read thread and then resubmit this.
>
> On 16 July 2015 at 07:20, Chaoren Lin <chaorenl at google.com> wrote:
> > I wouldn't be surprised if this were Android specific (libc/kernel bug).
> > Since we did run into problems with pthread_sigmask before.
> >
> > On Wed, Jul 15, 2015 at 11:17 PM, Chaoren Lin <chaorenl at google.com>
> wrote:
> >>
> >> Yeah, it's definitely related. Those two tests launch a large number of
> >> processes. LLDB kinda hangs waiting for the inferior exit SIGCHLD.
> Multiply
> >> that by the number of processes and you have hanging tests.
> >>
> >> On Jul 15, 2015 23:14, "Oleksiy Vyalov" <ovyalov at google.com> wrote:
> >>>
> >>> Starting with this build  which includes the CL next 2 tests started to
> >>> timeout - TestIntegerTypes & TestIntegerTypesExpr.
> >>> Could you check whether it's related or not?
> >>>
> >>> On Wed, Jul 15, 2015 at 7:06 PM, Chaoren Lin <chaorenl at google.com>
> wrote:
> >>>>
> >>>> Hi Pavel,
> >>>>
> >>>> I think there's some problems with the signal handling. SIGCHLD is
> >>>> received 6 times, but SigchldHandler is only called 5 times (missing
> the
> >>>> exit signal).
> >>>>
> >>>> The following error occurs when trying to `process kill` an Android
> >>>> inferior:
> >>>> ```
> >>>> Handle_k: failed to kill spawned pid ###, ignoring.
> >>>> ```
> >>>>
> >>>> It doesn't seem to be directly causing any test failures, but it's
> >>>> significantly slowing down the test suite.
> >>>>
> >>>> Could you please look into this?
> >>>>
> >>>> On Wed, Jul 15, 2015 at 10:20 AM, Pavel Labath <labath at google.com>
> >>>> wrote:
> >>>>>
> >>>>> This revision was automatically updated to reflect the committed
> >>>>> changes.
> >>>>> Closed by commit rL242305: [NativeProcessLinux] Integrate MainLoop
> >>>>> (authored by labath).
> >>>>>
> >>>>> Changed prior to commit:
> >>>>>   http://reviews.llvm.org/D11150?vs=29660&id=29789#toc
> >>>>>
> >>>>> Repository:
> >>>>>   rL LLVM
> >>>>>
> >>>>> http://reviews.llvm.org/D11150
> >>>>>
> >>>>> Files:
> >>>>>   lldb/trunk/include/lldb/Host/common/NativeProcessProtocol.h
> >>>>>   lldb/trunk/source/Host/common/NativeProcessProtocol.cpp
> >>>>>   lldb/trunk/source/Plugins/Process/Linux/NativeProcessLinux.cpp
> >>>>>   lldb/trunk/source/Plugins/Process/Linux/NativeProcessLinux.h
> >>>>>
> >>>>>
> lldb/trunk/source/Plugins/Process/Linux/NativeRegisterContextLinux.cpp
> >>>>>
> >>>>>
> lldb/trunk/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.cpp
> >>>>>
> >>>>>
> lldb/trunk/source/Plugins/Process/Linux/NativeRegisterContextLinux_mips64.cpp
> >>>>>
> >>>>>
> lldb/trunk/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
> >>>>>
> >>>>>
> lldb/trunk/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.h
> >>>>>
> >>>>
> >>>
> >>>
> >>>
> >>> --
> >>> Oleksiy Vyalov | Software Engineer | ovyalov at google.com
> >
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20150724/725d9d20/attachment.html>


More information about the lldb-commits mailing list