<div dir="ltr"><br><div class="gmail_extra">Hi Simon,</div><div class="gmail_extra"><br></div><div class="gmail_extra"><div class="gmail_quote">On Wed, Jun 13, 2018 at 5:24 PM, Simon Peyton Jones <span dir="ltr"><<a href="mailto:simonpj@microsoft.com" target="_blank">simonpj@microsoft.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">





<div link="blue" vlink="purple" lang="EN-GB">
<div class="m_1038731655912591952WordSection1">
<p class="MsoNormal"><span>OK – so maybe the root cause is a framework failure – and indeed for the last few weeks I’ve seen<u></u><u></u></span></p>
<p class="m_1038731655912591952Code"><span>Framework failures:<u></u><u></u></span></p>
<p class="m_1038731655912591952Code"><span>   plugins/plugins07.run  plugins07 [normal] (pre_cmd failed: 2)<u></u><u></u></span></p>
<p class="m_1038731655912591952Code"><span>   plugins/T10420.run     T10420 [normal] (pre_cmd failed: 2)<u></u><u></u></span></p>
<p class="m_1038731655912591952Code"><span>   plugins/T11244.run     T11244 [normal] (pre_cmd failed: 2)<u></u><u></u></span></p>
<p class="MsoNormal"><span><u></u> <u></u></span></p>
<p class="MsoNormal"><span>I have just learned to live with these failures, because I knew you were working on making things better.  But it sounds as if they are still taking place.</span></p></div></div></blockquote><div><br></div><div>The commit I made should have reduced the amount of failing tests to 0. framework failures are always quite unusual.<br></div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div link="blue" vlink="purple" lang="EN-GB"><div class="m_1038731655912591952WordSection1"><p class="MsoNormal"><span><u></u><u></u></span></p>
<p class="MsoNormal"><span><u></u> <u></u></span></p>
<p class="MsoNormal"><span>So:<u></u><u></u></span></p>
<ul style="margin-top:0cm" type="disc">
<li class="m_1038731655912591952MsoListParagraph" style="margin-left:0cm"><span>Yes, please make it not happen by default</span></li></ul></div></div></blockquote><div>I've removed the code, if you update it should be gone. It was there and on by default because I was trying to debug failures on Harbormaster, I</div><div>realized a switch isn't very useful as I won't be able to toggle it for Harbormaster anyway.<br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div link="blue" vlink="purple" lang="EN-GB"><div class="m_1038731655912591952WordSection1"><ul style="margin-top:0cm" type="disc"><li class="m_1038731655912591952MsoListParagraph" style="margin-left:0cm"><span><u></u><u></u></span></li><li class="m_1038731655912591952MsoListParagraph" style="margin-left:0cm"><span>If you don’t get these framework failures, can we work together to resolve them?</span></li></ul></div></div></blockquote><div>These don't happen for me nor on Harbormaster, try picking a test, e.g 
<span>T10420 </span>

<br></div><div><br></div><div>run only that test to make sure it's not a threading issue:</div><div><br></div><div>make TEST=<span>T10420 test -C testsuite/tests </span>



<br></div><div><br></div><div>If it still gives a framework error then do at the top level</div><div><br></div><div>make VERBOSE=3 TEST=<span>T10420 </span>



 test -C testsuite/tests<br></div><div><br></div><div>once it runs, the output should contain the command it ran as a pre_cmd, and the stdout and</div><div>stderr from the pre_cmd output. Could you then send the error?</div><div><br></div><div>if it doesn't show any of this, try</div><div><br></div><div>
make CLEANP=0 VERBOSE=3 TEST=
<span>T10420 </span>



 test -C testsuite/tests --trace

<br></div><div><br></div><div>and copy and paste the pre_cmd command, which should just replay the action it did.</div><div><br></div><div><br></div><div>Cheers,</div><div>Tamar<br></div><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div link="blue" vlink="purple" lang="EN-GB"><div class="m_1038731655912591952WordSection1">
<p class="MsoNormal"><span><u></u> <u></u></span></p>
<p class="MsoNormal"><span>Thanks<u></u><u></u></span></p>
<p class="MsoNormal"><span><u></u> <u></u></span></p>
<p class="MsoNormal"><span>Simon<u></u><u></u></span></p>
<p class="MsoNormal"><span><u></u> <u></u></span></p>
<div style="border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm 4.0pt">
<div>
<div style="border:none;border-top:solid #e1e1e1 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span lang="EN-US">From:</span></b><span lang="EN-US"> Phyx <<a href="mailto:lonetiger@gmail.com" target="_blank">lonetiger@gmail.com</a>>
<br>
<b>Sent:</b> 13 June 2018 17:19<br>
<b>To:</b> Simon Peyton Jones <<a href="mailto:simonpj@microsoft.com" target="_blank">simonpj@microsoft.com</a>><br>
<b>Cc:</b> <a href="mailto:ghc-devs@haskell.org" target="_blank">ghc-devs@haskell.org</a><br>
<b>Subject:</b> Re: Strace<u></u><u></u></span></p>
</div>
</div><div><div class="h5">
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Hi Simon, <u></u><u></u></p>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">The strace is only supposed to run when the normal test pre_cmd fails.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">If it's running that often it means your tests are all failing during pre_cmd with a framework failure <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><a href="https://git.haskell.org/ghc.git/blobdiff/4778cba1dbb6adf495930322d7f9e9db0af60d8f..60fb2b2160aa16194b74262f4df8fad5af171b0f:/testsuite/driver/testlib.py" target="_blank">https://git.haskell.org/ghc.<wbr>git/blobdiff/<wbr>4778cba1dbb6adf495930322d7f9e9<wbr>db0af60d8f..<wbr>60fb2b2160aa16194b74262f4df8fa<wbr>d5af171b0f:/testsuite/driver/<wbr>testlib.py</a><u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">But maybe I shouldn't turn this on my default. I'll pramaterize it when I get home. <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">Tamar. <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<div>
<p class="MsoNormal">On Wed, Jun 13, 2018, 17:09 Simon Peyton Jones <<a href="mailto:simonpj@microsoft.com" target="_blank">simonpj@microsoft.com</a>> wrote:<u></u><u></u></p>
</div>
<blockquote style="border:none;border-left:solid #cccccc 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-right:0cm">
<div>
<div>
<p class="MsoNormal">Tamar<u></u><u></u></p>
<p class="MsoNormal">I’m getting
<b>megabytes</b> of output from ‘sh validate’ on windows.  It looks like this<u></u><u></u></p>
<p class="m_1038731655912591952m-1763880775547741805code">  629  151745 [main] sh 2880 fhandler_base::fhaccess: returning 0<u></u><u></u></p>
<p class="m_1038731655912591952m-1763880775547741805code">  291  152036 [main] sh 2880 faccessat: returning 0<u></u><u></u></p>
<p class="m_1038731655912591952m-1763880775547741805code">7757  159793 [main] sh 2880 fhandler_base_overlapped::<wbr>wait_overlapped: wfres 0, wores 1, bytes 7<u></u><u></u></p>
<p class="m_1038731655912591952m-1763880775547741805code">179457 1608947 [main] make 11484 fhandler_base_overlapped::<wbr>wait_overlapped: wfres 0, wores 1, bytes 7<u></u><u></u></p>
<p class="m_1038731655912591952m-1763880775547741805code">   99  159892 [main] sh 2880 fhandler_base_overlapped::<wbr>wait_overlapped: normal write, 7 bytes ispipe() 1<u></u><u></u></p>
<p class="m_1038731655912591952m-1763880775547741805code">  180 1609127 [main] make 11484 fhandler_base_overlapped::<wbr>wait_overlapped: normal read, 7 bytes ispipe() 1<u></u><u></u></p>
<p class="m_1038731655912591952m-1763880775547741805code">  139  160031 [main] sh 2880 write: 7 = write(1, 0x6000396A0, 7)<u></u><u></u></p>
<p class="m_1038731655912591952m-1763880775547741805code">  142 1609269 [main] make 11484 fhandler_base::read: returning 7, binary mode<u></u><u></u></p>
<p class="m_1038731655912591952m-1763880775547741805code">  139 1609408 [main] make 11484 read: 7 = read(5, 0x60005B4B0, 7)<u></u><u></u></p>
<p class="m_1038731655912591952m-1763880775547741805code">  136 1609544 [main] make 11484 read: read(5, 0x60005B4B7, 193) blocking<u></u><u></u></p>
<p class="m_1038731655912591952m-1763880775547741805code">4693  164724 [main] sh 2880 set_signal_mask: setmask 0, newmask 80000, mask_bits 0<u></u><u></u></p>
<p class="MsoNormal">but with hundreds of thousands of lines.  (I have not counted)<u></u><u></u></p>
<p class="MsoNormal">I believe that it may be the result of this line, earlier in the log<u></u><u></u></p>
<p class="m_1038731655912591952m-1763880775547741805code">cd "/c/Users/simonpj/AppData/<wbr>Local/Temp/ghctest-8fa9s6rk/<wbr>test   spaces/./plugins/plugins07.<wbr>run" &&
<b><span style="color:red">strace</span></b><span style="color:red"> </span>$MAKE -s --no-print-directory -C rule-defining-plugin package.plugins07 TOP=/c/code/HEAD/testsuite#<u></u><u></u></p>
<p class="MsoNormal">Note the strace.<u></u><u></u></p>
<p class="MsoNormal">That in turn was added in your commit<u></u><u></u></p>
<p class="m_1038731655912591952m-1763880775547741805code">commit 60fb2b2160aa16194b74262f4df8fa<wbr>d5af171b0f<u></u><u></u></p>
<p class="m_1038731655912591952m-1763880775547741805code">Author: Tamar Christina <<a href="mailto:tamar@zhox.com" target="_blank">tamar@zhox.com</a>><u></u><u></u></p>
<p class="m_1038731655912591952m-1763880775547741805code">Date:   Mon May 28 19:34:11 2018 +0100<u></u><u></u></p>
<p class="m_1038731655912591952m-1763880775547741805code"> <u></u><u></u></p>
<p class="m_1038731655912591952m-1763880775547741805code">    Clean up Windows testsuite failures<u></u><u></u></p>
<p class="m_1038731655912591952m-1763880775547741805code">    <u></u><u></u></p>
<p class="m_1038731655912591952m-1763880775547741805code">    Summary:<u></u><u></u></p>
<p class="m_1038731655912591952m-1763880775547741805code">    Another round and attempt at getting these down to 0.<u></u><u></u></p>
<p class="MsoNormal">Could you perhaps have made a mistake here?  Currently validate is unusable.<u></u><u></u></p>
<p class="MsoNormal">Thanks!<u></u><u></u></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal">Simon<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
</div>
</blockquote>
</div>
</div>
</div></div></div>
</div>
</div>

</blockquote></div><br></div></div>