<div dir="ltr">Hi,<div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Jan 29, 2014 at 4:13 AM, Jason Evans <span dir="ltr"><<a href="mailto:jasone@canonware.com" target="_blank">jasone@canonware.com</a>></span> wrote:<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">
The stats failures are all due to mallctl argument size mismatches, fixed here:<br>
<br>
<a href="https://github.com/jemalloc/jemalloc/commit/2b51a3e9e9bfebf081d25dfa92f3cd89e4a8ed73" target="_blank">https://github.com/jemalloc/jemalloc/commit/2b51a3e9e9bfebf081d25dfa92f3cd89e4a8ed73</a><br>
<div class="im"><br>
> test_oom_errors:test/integration/aligned_alloc.c:59: Failed assertion: (p != ((void *)0) || je_get_errno() != 12) == (false) --> true != false: test_oom_errors<br>
><br>
> test_alignment_errors:test/integration/mallocx.c:53: Failed assertion: (p) == (NULL) --> 0x40000000 != 0x0: test_alignment_errors<br>
><br>
> test_oom_errors:test/integration/posix_memalign.c:53: Failed assertion: (posix_memalign(&p, alignment, size)) != (0) --> 0 == 0: test_oom_errors<br>
><br>
> 64bit builds are fine.<br>
<br>
<br>
</div>Wow, the machine is actually satisfying an mmap() request of size 0xd0000000 (3.5 GiB) in order for this to be happening. The tests are flawed, and they "pass" on 64-bit systems because of the virtual memory hole in the middle of the 64-bit address space. Fixed here:<br>
<br>
<a href="https://github.com/jemalloc/jemalloc/commit/a184d3fcdecfaaf694029fb375d023882aea444e" target="_blank">https://github.com/jemalloc/jemalloc/commit/a184d3fcdecfaaf694029fb375d023882aea444e</a><br>
<br>
In the case of mallocx(), this is technically undefined territory, so just removed that test, but for aligned_alloc() and posix_memalign(), I increased the request size enough to guarantee failure.<br>
<br>
In summary, these failures are all due to test bugs, rather than bugs in the library itself.<br></blockquote><div><br></div><div>After addings these two patches I have 2 new failures:</div><div><br></div><div>thd_start:test/unit/prof_accum.c:83: Failed assertion: (bt_count_prev+(i-i_prev)) <= (bt_count) --> 6 > 1: thd_start</div>
<div><br></div><div>and</div><div><br></div><div>[test_alignment_errors:test/integration/allocm.c:60: Failed assertion: (allocm(&p, &rsz, sz, (ffs(alignment)-1))) != (0) --> 0 == 0: test_alignment_errors<br></div>
<div><br></div><div>Thanks,</div><div>ismail</div><div><br></div></div></div></div>