<div dir="ltr"><div>Ok great, I'm attaching a patch here that just uses getpgid() to determine the pgid to use with waitpid(). I get the same unit test results before and after the patch (there are a few tests that fail consistently for me). I tried using a simple -1 with waitpid() but this results in a hang in the unit tests. This is probably something worth investigating but for now this patch does resolve the issues around waitpid() when attaching.<br>




<br></div>I mentioned a few issues I ran into with the unit tests in the email I just pinged with a Linux detach patch, basically there appears to be a bug or limitation somewhere in that doing a "continue" in asynchronous mode in a unit test breaks things and this is needed for most attach-related debug testing. I can probably look into this (along with the couple of failing tests I have) but likely won't be able to this week. I haven't filed a bug for the consistently-failing tests on my end since it doesn't appear to be happening for others and I haven't had a chance to investigate here, let me know if I should file a bug anyway.<br>




</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Mar 25, 2014 at 6:30 PM, Todd Fiala <span dir="ltr"><<a href="mailto:tfiala@google.com" target="_blank">tfiala@google.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">I'd suggest trying the change, running the tests, and see if anything new fails.<div><br></div><div>

And if this fixes currently broken behavior, add a test to make sure we don't regress it.  I'm pretty sure if it breaks something we'll know pretty quickly (either via bugs or our own usage).  At which point - we should add a test so we don't regress in the future and perhaps add a few comments as to the reason.</div>


</div><div class="gmail_extra"><div><div class="h5"><br><br><div class="gmail_quote">On Tue, Mar 25, 2014 at 9:54 AM,  <span dir="ltr"><<a href="mailto:jingham@apple.com" target="_blank">jingham@apple.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Why are you waiting for process groups?  That's not something we have to do on Mac OS X.<br>
<br>
Jim<br>
<div><div><br>
<br>
On Mar 25, 2014, at 1:17 AM, Andrew MacPherson <<a href="mailto:andrew.macp@gmail.com" target="_blank">andrew.macp@gmail.com</a>> wrote:<br>
<br>
> Currently under Linux if you attach to a process whose process group id is not equal to its process id (such as the child process of a fork() call) the calls to waitpid() that pass -1*pid will return ECHILD since the pid argument refers to a process group that doesn't exist. These calls occur in Host::MonitorChildProcessThreadFunction() and the Linux ProcessMonitor.<br>



><br>
> Changing -1*pid to simply -1 or to -1*getpgid(pid) resolves the issue but it's not clear if this is the right fix as I'm unsure how other OSes deal with this scenario.<br>
><br>
> Any thoughts?<br>
><br>
> Thanks,<br>
> Andrew<br>
</div></div>> _______________________________________________<br>
> lldb-dev mailing list<br>
> <a href="mailto:lldb-dev@cs.uiuc.edu" target="_blank">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>
_______________________________________________<br>
lldb-dev mailing list<br>
<a href="mailto:lldb-dev@cs.uiuc.edu" target="_blank">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>
</blockquote></div><br><br clear="all"><div><br></div></div></div><span class="HOEnZb"><font color="#888888">-- <br><div dir="ltr"><table style="color:rgb(136,136,136);font-family:'Times New Roman'" cellpadding="0" cellspacing="0">

<tbody><tr style="color:rgb(85,85,85);font-family:sans-serif;font-size:small">
<td style="border-top-style:solid;border-top-color:rgb(213,15,37);border-top-width:2px" nowrap>Todd Fiala |</td><td style="border-top-style:solid;border-top-color:rgb(51,105,232);border-top-width:2px" nowrap> Software Engineer |</td>


<td style="border-top-style:solid;border-top-color:rgb(0,153,57);border-top-width:2px" nowrap> <a href="mailto:tfiala@google.com" style="color:rgb(17,85,204)" target="_blank"><span style="background-color:rgb(255,255,204);color:rgb(34,34,34);background-repeat:initial initial">tfiala@google.com</span></a> |</td>


<td style="border-top-style:solid;border-top-color:rgb(238,178,17);border-top-width:2px" nowrap><font color="#1155cc"> <a>650-943-3180</a></font></td></tr></tbody></table><br></div>
</font></span></div>
</blockquote></div><br></div>