[Lldb-commits] [PATCH] Fix on Linux for ReadThread lingering after inferior exits

Todd Fiala tfiala at google.com
Thu Aug 21 09:54:18 PDT 2014


Giving this a final test now.

-Todd


On Wed, Aug 20, 2014 at 4:53 PM, Alex Pepper <apepper at blueshiftinc.com>
wrote:

> Thanks, I have added the additional check as
> suggested.
>
>
>
>
> On Mon, Aug 18, 2014 at 4:45 PM, Greg Clayton <gclayton at apple.com> wrote:
>
>> You might need change:
>>
>>      if (error.GetError() == EIO)
>>
>>
>> to be:
>>
>>      if (error.GetType() == eErrorTypePOSIX && error.GetError() == EIO)
>>
>> Other than that, it looks good.
>>
>>
>> > On Aug 13, 2014, at 1:47 PM, Alex Pepper <apepper at blueshiftinc.com>
>> wrote:
>> >
>> > This patch handles the case where the inferior process exits but leaves
>> the ReadThread in a continuous loop reading from the communication pipe.
>> On MacOSX, the ReadThread exits when it receives a 0 return value from the
>> read due to EOF.  On Linux the read returns -1 and sets errno to EIO error,
>> this does not currently cause the thread to shutdown so it continues to
>> read from the comm.   In Communication::ReadThread I added a handler for
>> eConnectionStatusError to disconnect and shutdown the thread.
>> >
>> > We ran this through the full test suite on Ubuntu 14.04 x86_64 and
>> MacOSX 10.9.4 with Xcode 6 Beta 5 with no new test failures.
>> >
>> > Let me know if there is a reason we shouldn't be handling the
>> eConnectionStatusError in this way.
>> >
>> > Thanks,
>> >
>> > Alex
>> >
>> <apepper_connectstatuserror_rev1.diff>_______________________________________________
>> > lldb-commits mailing list
>> > lldb-commits at cs.uiuc.edu
>> > http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits
>>
>>
>
> _______________________________________________
> lldb-commits mailing list
> lldb-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits
>
>


-- 
Todd Fiala | Software Engineer | tfiala at google.com | 650-943-3180
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20140821/6a9d5bb9/attachment.html>


More information about the lldb-commits mailing list