<div dir="ltr">I think that was maybe the discussion on <a href="https://reviews.llvm.org/D78245">https://reviews.llvm.org/D78245</a></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Sep 3, 2020 at 6:22 PM Robinson, Paul <<a href="mailto:paul.robinson@sony.com">paul.robinson@sony.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">





<div lang="EN-US">
<div class="gmail-m_2954087826578621758WordSection1">
<p class="MsoNormal">I have a vague memory that libcxx wanted it for something, and claimed it would be hard to work around not having it.<u></u><u></u></p>
<p class="MsoNormal">Anyone else remember that?  I can’t dredge up the details, sorry…<u></u><u></u></p>
<p class="MsoNormal">In any event, a separate properly-titled thread on llvm-dev would be the right way to decide this.<u></u><u></u></p>
<p class="MsoNormal">--paulr<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<div style="border-top:none;border-right:none;border-bottom:none;border-left:1.5pt solid blue;padding:0in 0in 0in 4pt">
<div>
<div style="border-right:none;border-bottom:none;border-left:none;border-top:1pt solid rgb(225,225,225);padding:3pt 0in 0in">
<p class="MsoNormal"><b>From:</b> llvm-dev <<a href="mailto:llvm-dev-bounces@lists.llvm.org" target="_blank">llvm-dev-bounces@lists.llvm.org</a>> <b>On Behalf Of
</b>Nico Weber via llvm-dev<br>
<b>Sent:</b> Thursday, September 3, 2020 4:16 PM<br>
<b>To:</b> David Blaikie <<a href="mailto:dblaikie@gmail.com" target="_blank">dblaikie@gmail.com</a>><br>
<b>Cc:</b> llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>>; LLVM on Power <<a href="mailto:powerllvm@ca.ibm.com" target="_blank">powerllvm@ca.ibm.com</a>>; Nemanja Ivanovic <<a href="mailto:nemanjai@ca.ibm.com" target="_blank">nemanjai@ca.ibm.com</a>><br>
<b>Subject:</b> Re: [llvm-dev] Flakey failure on clang-ppc64le-linux-multistage<u></u><u></u></p>
</div>
</div>
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<p class="MsoNormal"><a href="https://urldefense.com/v3/__https:/llvm.org/docs/CommandGuide/lit.html__;!!JmoZiZGBv3RvKRSx!pMM0AcKS3gRL1wx2OJk-DMZG6KNuO3f602ILYnDX01_Q_Se_K_tNOHEg9mWS8jKYBA$" target="_blank">https://llvm.org/docs/CommandGuide/lit.html</a> already lists %T as
 "parent directory of %t (not unique, deprecated, do not use)". See also <a href="https://urldefense.com/v3/__https:/reviews.llvm.org/D35396__;!!JmoZiZGBv3RvKRSx!pMM0AcKS3gRL1wx2OJk-DMZG6KNuO3f602ILYnDX01_Q_Se_K_tNOHEg9mVseLHLGw$" target="_blank">https://reviews.llvm.org/D35396</a><u></u><u></u></p>
</div>
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<div>
<p class="MsoNormal">On Thu, Sep 3, 2020 at 3:37 PM David Blaikie <<a href="mailto:dblaikie@gmail.com" target="_blank">dblaikie@gmail.com</a>> wrote:<u></u><u></u></p>
</div>
<blockquote style="border-top:none;border-right:none;border-bottom:none;border-left:1pt solid rgb(204,204,204);padding:0in 0in 0in 6pt;margin-left:4.8pt;margin-right:0in">
<div>
<p class="MsoNormal">Yeah, I think I'd be up for considering deprecation of %T due to the risk of race conditions/conflicts between tests. %t gives a unique name you can do whatever you want with - only need one file, use %t as a file, need a directory full
 of files, mkdir %t and use that, etc.<br>
<br>
But will depend a bit on what the uses of %T look like, maybe there are some good uses of it that we haven't thought of until we see them.<u></u><u></u></p>
</div>
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<div>
<p class="MsoNormal">On Thu, Sep 3, 2020 at 12:33 PM Fāng-ruì Sòng <<a href="mailto:maskray@google.com" target="_blank">maskray@google.com</a>> wrote:<u></u><u></u></p>
</div>
<blockquote style="border-top:none;border-right:none;border-bottom:none;border-left:1pt solid rgb(204,204,204);padding:0in 0in 0in 6pt;margin-left:4.8pt;margin-right:0in">
<p class="MsoNormal">Should be fixed by <a href="https://urldefense.com/v3/__https:/reviews.llvm.org/D87103__;!!JmoZiZGBv3RvKRSx!pMM0AcKS3gRL1wx2OJk-DMZG6KNuO3f602ILYnDX01_Q_Se_K_tNOHEg9mXzlKTnBw$" target="_blank">
https://reviews.llvm.org/D87103</a><br>
<br>
Shall we consider deprecating(emitting a warning)/removing %T from<br>
lit? lldb, lld/COFF and clang-tools-extra are the three major users of<br>
%T. There are a few other %T in other places but there are not too<br>
many. We will also investigate whether other projects using lit are<br>
using %T.<br>
<br>
On Thu, Sep 3, 2020 at 11:25 AM David Blaikie <<a href="mailto:dblaikie@gmail.com" target="_blank">dblaikie@gmail.com</a>> wrote:<br>
><br>
> Oh yeah, good catch! Thanks!<br>
><br>
> On Thu, Sep 3, 2020 at 11:13 AM Fāng-ruì Sòng <<a href="mailto:maskray@google.com" target="_blank">maskray@google.com</a>> wrote:<br>
>><br>
>> This is likely due to a race condition (%T is a shared parent<br>
>> directory). I'll put up a patch to fix it.<br>
>><br>
>> On Thu, Sep 3, 2020 at 10:00 AM David Blaikie via llvm-dev<br>
>> <<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>> wrote:<br>
>> ><br>
>> > Is the machine running any jobs in parallel? Would it be worth trying running lit in the loop, rather than the script? (perhaps lit's doing something interesting) or maybe the full test run from ninja, but I appreciate that that is expensive.<br>
>> ><br>
>> > Are there other PPC bots? Any idea if they are experiencing this failure?<br>
>> ><br>
>> > There are also other tests that do similar mkdir/symlink things, I think - yet they are not failing? Maybe they do it in some slightly different manner?<br>
>> ><br>
>> > On Thu, Sep 3, 2020 at 5:03 AM Nemanja Ivanovic <<a href="mailto:nemanja.i.ibm@gmail.com" target="_blank">nemanja.i.ibm@gmail.com</a>> wrote:<br>
>> >><br>
>> >> Sure.<br>
>> >> I didn't use lit or ninja. I simply copied the script produced by lit (/home/buildbots/ppc64le-clang-multistage-test/clang-ppc64le-multistage/stage1/tools/clang/test/Driver/Output/target-override.c.script) into a temporary directory (along with a deep
 copy of the build directory). I modified the paths in the script to point to the temporary directory.<br>
>> >> Then I ran the script in a loop.<br>
>> >> For running a bunch in parallel, I just produced a wrapper script to invoke that one:<br>
>> >> target-override.c.script $LINENO &<br>
>> >> target-override.c.script $LINENO &<br>
>> >> target-override.c.script $LINENO &<br>
>> >> ...<br>
>> >> wait<br>
>> >> And ran that in a loop. For thousands of iterations...<br>
>> >><br>
>> >> On Wed, Sep 2, 2020 at 3:51 PM David Blaikie <<a href="mailto:dblaikie@gmail.com" target="_blank">dblaikie@gmail.com</a>> wrote:<br>
>> >>><br>
>> >>> Thanks for looking into it!<br>
>> >>><br>
>> >>> Could you describe your test process in more detail? Were you running lit from your script? Running the build system (ninja?)?<br>
>> >>><br>
>> >>> On Wed, Sep 2, 2020 at 10:47 AM Nemanja Ivanovic <<a href="mailto:nemanja.i.ibm@gmail.com" target="_blank">nemanja.i.ibm@gmail.com</a>> wrote:<br>
>> >>>><br>
>> >>>> Well, I am at my wit's end. I have copied over the script and directories for this test case and run it a few million times. First I was running one at a time, then I switched to kicking off 1000 at a time. All the while, the bots continued to run on
 the same machine. The script never failed even once. I am not sure if this has something to do with Python as part of llvm-lit or what is going on.<br>
>> >>>> I am thinking that the best course of action for us is to mark this test case UNSUPPORTED for PPC.<br>
>> >>>><br>
>> >>>> On Wed, Sep 2, 2020 at 12:41 PM Nemanja Ivanovic via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>> wrote:<br>
>> >>>>><br>
>> >>>>> Interesting, thanks for bringing this to our attention. I just took a quick look through the last 100 builds and this test has failed 13 times. This is certainly something we need to look at. We will investigate and see if we can make any sense of
 this.<br>
>> >>>>><br>
>> >>>>> Nemanja Ivanovic<br>
>> >>>>> LLVM PPC Backend Development<br>
>> >>>>> IBM Toronto Lab<br>
>> >>>>> Email: <a href="mailto:nemanjai@ca.ibm.com" target="_blank">nemanjai@ca.ibm.com</a><br>
>> >>>>> Phone: <a href="tel:(905)%20413-3388" target="_blank">905-413-3388</a><br>
>> >>>>><br>
>> >>>>><br>
>> >>>>><br>
>> >>>>> ----- Original message -----<br>
>> >>>>> From: David Blaikie <<a href="mailto:dblaikie@gmail.com" target="_blank">dblaikie@gmail.com</a>><br>
>> >>>>> To: llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>>, Nico Weber <<a href="mailto:thakis@chromium.org" target="_blank">thakis@chromium.org</a>>, Serge Pavlov <<a href="mailto:sepavloff@gmail.com" target="_blank">sepavloff@gmail.com</a>>,
<a href="mailto:powerllvm@ca.ibm.com" target="_blank">powerllvm@ca.ibm.com</a><br>
>> >>>>> Cc:<br>
>> >>>>> Subject: [EXTERNAL] Flakey failure on clang-ppc64le-linux-multistage<br>
>> >>>>> Date: Tue, Sep 1, 2020 6:10 PM<br>
>> >>>>><br>
>> >>>>> Seems there were a couple of correlated failures that appear to be flakes on this buildbot recently:<br>
>> >>>>><br>
>> >>>>> green: <a href="https://urldefense.com/v3/__http:/lab.llvm.org:8011/builders/clang-ppc64le-linux-multistage/builds/13974__;!!JmoZiZGBv3RvKRSx!pMM0AcKS3gRL1wx2OJk-DMZG6KNuO3f602ILYnDX01_Q_Se_K_tNOHEg9mXw4VrwUw$" target="_blank">
http://lab.llvm.org:8011/builders/clang-ppc64le-linux-multistage/builds/13974</a><br>
>> >>>>> red: <a href="https://urldefense.com/v3/__http:/lab.llvm.org:8011/builders/clang-ppc64le-linux-multistage/builds/13975__;!!JmoZiZGBv3RvKRSx!pMM0AcKS3gRL1wx2OJk-DMZG6KNuO3f602ILYnDX01_Q_Se_K_tNOHEg9mXhob0Wcg$" target="_blank">
http://lab.llvm.org:8011/builders/clang-ppc64le-linux-multistage/builds/13975</a> (target-override.c during stage 1, seems to be missing the directory/symlink it just created)<br>
>> >>>>> red: <a href="https://urldefense.com/v3/__http:/lab.llvm.org:8011/builders/clang-ppc64le-linux-multistage/builds/13976__;!!JmoZiZGBv3RvKRSx!pMM0AcKS3gRL1wx2OJk-DMZG6KNuO3f602ILYnDX01_Q_Se_K_tNOHEg9mU1HOQs2Q$" target="_blank">
http://lab.llvm.org:8011/builders/clang-ppc64le-linux-multistage/builds/13976</a> (same test failure as the last, but during stage 2, not stage 1)<br>
>> >>>>> green: <a href="https://urldefense.com/v3/__http:/lab.llvm.org:8011/builders/clang-ppc64le-linux-multistage/builds/13977__;!!JmoZiZGBv3RvKRSx!pMM0AcKS3gRL1wx2OJk-DMZG6KNuO3f602ILYnDX01_Q_Se_K_tNOHEg9mVp5e-Lnw$" target="_blank">
http://lab.llvm.org:8011/builders/clang-ppc64le-linux-multistage/builds/13977</a><br>
>> >>>>><br>
>> >>>>> Including Nico & Pavlov as the people who wrote/edited the test, but I'm guessing this is something interesting going on on the buildbot itself?<br>
>> >>>>><br>
>> >>>>> <a href="mailto:powerllvm@ca.ibm.com" target="_blank">powerllvm@ca.ibm.com</a>, whoever you are on the end of that mailing list - could you take a look at this? Possibly manually running that test in a loop a bunch of times to see if it fails sometimes
 & try to help us understand why?<br>
>> >>>>><br>
>> >>>>><br>
>> >>>>><br>
>> >>>>> _______________________________________________<br>
>> >>>>> LLVM Developers mailing list<br>
>> >>>>> <a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a><br>
>> >>>>> <a href="https://urldefense.com/v3/__https:/lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev__;!!JmoZiZGBv3RvKRSx!pMM0AcKS3gRL1wx2OJk-DMZG6KNuO3f602ILYnDX01_Q_Se_K_tNOHEg9mUugA-Hgw$" target="_blank">
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><br>
>> ><br>
>> > _______________________________________________<br>
>> > LLVM Developers mailing list<br>
>> > <a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a><br>
>> > <a href="https://urldefense.com/v3/__https:/lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev__;!!JmoZiZGBv3RvKRSx!pMM0AcKS3gRL1wx2OJk-DMZG6KNuO3f602ILYnDX01_Q_Se_K_tNOHEg9mUugA-Hgw$" target="_blank">
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><br>
>><br>
>><br>
>><br>
>> --<br>
>> <span style="font-family:"MS Gothic"">宋方睿</span><br>
<br>
<br>
<br>
-- <br>
<span style="font-family:"MS Gothic"">宋方睿</span><u></u><u></u></p>
</blockquote>
</div>
</blockquote>
</div>
</div>
</div>
</div>

</blockquote></div>