<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Fri, Feb 26, 2016 at 1:53 PM, Rob Landley <span dir="ltr"><<a href="mailto:notifications@github.com" target="_blank">notifications@github.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">I prefer dealing with this sort of thing through the mailing list, I<br>
only really use github as repository hosting.<br></blockquote><div><br></div><div>Oh, sorry, adding the list to this reply.</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<br>
On 02/25/2016 01:31 AM, drinkcat wrote:<br>
> We use toybox-0.7.0 as part of the Chromium OS project, and sometimes<br>
> hit an issue when building it on our automated builders (see this issue<br>
> <<a href="https://bugs.chromium.org/p/chromium/issues/detail?id=584542" target="_blank">https://bugs.chromium.org/p/chromium/issues/detail?id=584542</a>>):<br>
> <br>
> |toybox-0.7.0: armv7a-cros-linux-gnueabi-gcc -O2 -O2 -pipe -march=armv7-a<br>
> -mtune=cortex-a15 -mfpu=neon -mfloat-abi=hard -g -fno-exceptions<br>
> -fno-unwind-tables -fno-asynchronous-unwind-tables -clang-syntax<br>
> -funsigned-char -Wno-string-plus-int -I . -Os -ffunction-sections<br>
> -fdata-sections -fno-asynchronous-unwind-tables -fno-strict-aliasing -c<br>
> toys/posix/tail.c -o generated/obj/tail.o toybox-0.7.0: scripts/make.sh:<br>
> line 270: wait: pid 8477 is not a child of this shell toybox-0.7.0:<br>
<br>
Hmmm... PID wrap, maybe?<br></blockquote><div><br></div><div>That's what we were wondering about... The builder is building a lot of other packages at the same time, including Chromium, so it's not unlikely that the PID space is saturated... Also, the builder retries after the first failure, and the second try always works (probably when the builder is less busy...)</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
> Looking at the code (|script/make.sh|), we are wondering about your use<br>
> of |$(jobs -rp)|. Wouldn't it be more correct to add jobs to PENDING<br>
> using |$!| right after you launch the job (|do_loudly|)?<br>
<br>
If you think that'll help, I'm happy to give it a try, sure.<br></blockquote><div><br></div><div>I have a commit ready here, that appears to fix the problem:</div><div><a href="https://github.com/drinkcat/toybox/commit/4c705620d73e3e9c12a3be54dc5d2efda939241a">https://github.com/drinkcat/toybox/commit/4c705620d73e3e9c12a3be54dc5d2efda939241a</a></div><div><br></div><div>It's a little less aggressive at parallelizing, as it always waits for the first PID if PENDING is full (instead of refreshing the PENDING list every time)...</div><div><br></div><div>I guess that you prefer I send the patch to the list? Or is a github PR fine too?</div><div><br></div><div>Thanks!</div><div><br></div><div>Best,</div><div><br></div><div>Nicolas</div></div></div></div>