<div dir="ltr">Those hangs are known limitations of our AOT technology for which we have no plans on fixing in the near term.</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Aug 19, 2013 at 10:49 AM, Charles Randall <span dir="ltr"><<a href="mailto:Charles.Randall@nirvanix.com" target="_blank">Charles.Randall@nirvanix.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Continuing this investigation, I ran the following using the mono-3-2 branch as of a0fc6ba35b7454425b8ec772b2652730b8030a52.<br>

<br>
I couldn't run a top-level "make check" because of this bug,<br>
<br>
<a href="https://bugzilla.xamarin.com/show_bug.cgi?id=14049" target="_blank">https://bugzilla.xamarin.com/show_bug.cgi?id=14049</a><br>
<br>
Because of this limitation, I ran "make check" in the mono directory.<br>
<br>
In 117 failures in 441 iterations (26.5%). Here's the count of the tests that failed,<br>
<br>
    103 gsharing-valuetype-layout.exe<br>
      8 sgen-bridge.exe|ms-conc<br>
      2 gc-altstack.exe<br>
      1 sgen-weakref-stress.exe|ms-par<br>
      1 sgen-case-23400.exe|ms-par<br>
      1 sgen-bridge.exe|plain<br>
      1 bug-10127.exe<br>
<br>
Looking only at the 103 failures of gsharing-valuetype-layout.exe, in 81 of the failures were the 120 second test timeout. A successful run of this test takes less than a second. In the timeout case, mono simply appears to hang.<br>

<br>
Running this manually, when it hangs it stops using CPU and strace reports,<br>
<br>
# strace -fp 4289<br>
Process 4289 attached with 3 threads<br>
[pid  4292] futex(0x7f6264000020, FUTEX_WAIT_PRIVATE, 2, NULL <unfinished ...><br>
[pid  4290] futex(0x967340, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...><br>
[pid  4289] futex(0x1c84f1c, FUTEX_WAIT_PRIVATE, 3, NULL<br>
<br>
Here's a gstack stack trace,<br>
<br>
<a href="http://sprunge.us/CfjX" target="_blank">http://sprunge.us/CfjX</a><br>
<br>
This is trivial to reproduce on my system,<br>
<br>
# uname -a<br>
Linux linux-mono.....com 3.7.10-1.1-desktop #1 SMP PREEMPT Thu Feb 28 15:06:29 UTC 2013 (82d3f21) x86_64 x86_64 x86_64 GNU/Linux<br>
<br>
Running as a VMware virtual machine, 4 CPU, 8 GB RAM.<br>
<br>
I use this simple script to repeatedly run the commands,<br>
<br>
<a href="http://sprunge.us/VKTS" target="_blank">http://sprunge.us/VKTS</a><br>
<br>
E.g.,<br>
<br>
        ./repeat.sh mono gsharing-valuetype-layout.exe<br>
<br>
Filed bug 14073 to track this,<br>
<br>
<a href="https://bugzilla.xamarin.com/show_bug.cgi?id=14073" target="_blank">https://bugzilla.xamarin.com/show_bug.cgi?id=14073</a><br>
<br>
Looking back at previous failures, I realize that this hang can be worked around by disabling AOT using the mono option '-O=-aot". Ugh. Given that, this may be the same as bug 7564,<br>
<br>
<a href="https://bugzilla.xamarin.com/show_bug.cgi?id=7564" target="_blank">https://bugzilla.xamarin.com/show_bug.cgi?id=7564</a><br>
<span class="HOEnZb"><font color="#888888"><br>
-Charles<br>
</font></span><div class="im HOEnZb"><br>
-----Original Message-----<br>
From: Charles Randall<br>
Sent: Wednesday, August 14, 2013 2:36 PM<br>
To: <a href="mailto:mono-devel-list@lists.ximian.com">mono-devel-list@lists.ximian.com</a><br>
Subject: RE: [Mono-dev] mono-3.2.1 "make check" failures & sgen assertion<br>
<br>
Continuing to dig into these failures, here is what I've found so far.<br>
<br>
The majority of the bug-10127 test failures were due to bug 13604 and now resolves the assert in sgen-os-posix.c:60 and is already in the mono 3.2 branch and should be included in the upcoming mono 3.2.2.<br>
<br>
<a href="https://bugzilla.xamarin.com/show_bug.cgi?id=13604" target="_blank">https://bugzilla.xamarin.com/show_bug.cgi?id=13604</a><br>
<br>
The failures in sgen-weakref-stress were resolved in this fix which is planned to be in the upcoming 3.2.2,<br>
<br>
<a href="https://github.com/mono/mono/commit/aef4b77ea79aa0a4c06e10bd5842da9df0d10973" target="_blank">https://github.com/mono/mono/commit/aef4b77ea79aa0a4c06e10bd5842da9df0d10973</a><br>
<br>
The majority of delegate2 test failures are due to bug 7564. There is a workaround for this listed in the bug report.<br>
<br>
<a href="https://bugzilla.xamarin.com/show_bug.cgi?id=7564" target="_blank">https://bugzilla.xamarin.com/show_bug.cgi?id=7564</a><br>
<br>
That bug is pretty disturbing. Once you've determined you need the workaround, your application has already hung. If your application is critical to your business that's a tough lesson to learn.<br>
<br>
The discrepancy between my observed "make check" failures and the "all green" results of the monkey wrench automated tests appears to be because many tests are disabled for monkey wrench. See DISABLED_TESTS_WRENCH in mono/tests/Makefile for the details. Notably, bug-10127 is disabled.<br>

<br>
Continuing these tests with the 3.2 branch and the second fix above.<br>
<br>
-Charles<br>
<br>
<br>
</div><div class="HOEnZb"><div class="h5">_______________________________________________<br>
Mono-devel-list mailing list<br>
<a href="mailto:Mono-devel-list@lists.ximian.com">Mono-devel-list@lists.ximian.com</a><br>
<a href="http://lists.ximian.com/mailman/listinfo/mono-devel-list" target="_blank">http://lists.ximian.com/mailman/listinfo/mono-devel-list</a><br>
</div></div></blockquote></div><br></div>