{"action":"created","issue":{"url":"https://api.github.com/repos/jemalloc/jemalloc/issues/761","repository_url":"https://api.github.com/repos/jemalloc/jemalloc","labels_url":"https://api.github.com/repos/jemalloc/jemalloc/issues/761/labels{/name}","comments_url":"https://api.github.com/repos/jemalloc/jemalloc/issues/761/comments","events_url":"https://api.github.com/repos/jemalloc/jemalloc/issues/761/events","html_url":"https://github.com/jemalloc/jemalloc/issues/761","id":220856050,"number":761,"title":"test/unit/SFMT fails on ppc64le (POWER8), default system configuration","user":{"login":"davidlt","id":197091,"avatar_url":"https://avatars3.githubusercontent.com/u/197091?v=4","gravatar_id":"","url":"https://api.github.com/users/davidlt","html_url":"https://github.com/davidlt","followers_url":"https://api.github.com/users/davidlt/followers","following_url":"https://api.github.com/users/davidlt/following{/other_user}","gists_url":"https://api.github.com/users/davidlt/gists{/gist_id}","starred_url":"https://api.github.com/users/davidlt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davidlt/subscriptions","organizations_url":"https://api.github.com/users/davidlt/orgs","repos_url":"https://api.github.com/users/davidlt/repos","events_url":"https://api.github.com/users/davidlt/events{/privacy}","received_events_url":"https://api.github.com/users/davidlt/received_events","type":"User","site_admin":false},"labels":[{"id":128445326,"url":"https://api.github.com/repos/jemalloc/jemalloc/labels/portability","name":"portability","color":"bfe5bf","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":6,"created_at":"2017-04-11T06:54:08Z","updated_at":"2017-10-03T05:47:57Z","closed_at":null,"author_association":"NONE","body":"701daa5298b3befe2aff05ce590533165abb9ba4 from dev branch.\r\nEnvironment CentOS 7.3, kernel 3.10.0-514.10.2.el7.ppc64le, glibc 2.17, GCC 4.8.5, binutils 2.25.1-22.base.el7\r\n\r\nThe output is very long.\r\n\r\n```\r\n[..]\r\n=== test/unit/SFMT ===\r\ntest_gen_rand_32:test/unit/SFMT.c:1470: Failed assertion: (array32[i]) == (init_gen_rand_32_expected[i]) --> 2409195644 != 3440181298: Output mismatch for i=0\r\ntest_gen_rand_32:test/unit/SFMT.c:1470: Failed assertion: (array32[i]) == (init_gen_rand_32_expected[i]) --> 723582512 != 1564997079: Output mismatch for i=1\r\ntest_gen_rand_32:test/unit/SFMT.c:1470: Failed assertion: (array32[i]) == (init_gen_rand_32_expected[i]) --> 3024894813 != 1510669302: Output mismatch for i=2\r\ntest_gen_rand_32:test/unit/SFMT.c:1470: Failed assertion: (array32[i]) == (init_gen_rand_32_expected[i]) --> 1781879280 != 2930277156: Output mismatch for i=3\r\ntest_gen_rand_32:test/unit/SFMT.c:1470: Failed assertion: (array32[i]) == (init_gen_rand_32_expected[i]) --> 1067356262 != 1452439940: Output mismatch for i=4\r\ntest_gen_rand_32:test/unit/SFMT.c:1470: Failed assertion: (array32[i]) == (init_gen_rand_32_expected[i]) --> 3639479974 != 3796268453: Output mismatch for i=5\r\ntest_gen_rand_32:test/unit/SFMT.c:1470: Failed assertion: (array32[i]) == (init_gen_rand_32_expected[i]) --> 592726212 != 423124208: Output mismatch for i=6\r\ntest_gen_rand_32:test/unit/SFMT.c:1470: Failed assertion: (array32[i]) == (init_gen_rand_32_expected[i]) --> 1298498744 != 2143818589: Output mismatch for i=7\r\ntest_gen_rand_32:test/unit/SFMT.c:1470: Failed assertion: (array32[i]) == (init_gen_rand_32_expected[i]) --> 2452768176 != 3827219408: Output mismatch for i=8\r\ntest_gen_rand_32:test/unit/SFMT.c:1470: Failed assertion: (array32[i]) == (init_gen_rand_32_expected[i]) --> 3824828382 != 2987036003: Output mismatch for i=9\r\ntest_gen_rand_32:test/unit/SFMT.c:1470: Failed assertion: (array32[i]) == (init_gen_rand_32_expected[i]) --> 3706840695 != 2674978610: Output mismatch for i=10\r\ntest_gen_rand_32:test/unit/SFMT.c:1470: Failed assertion: (array32[i]) == (init_gen_rand_32_expected[i]) --> 2896181029 != 1536842514: Output mismatch for i=11\r\ntest_gen_rand_32:test/unit/SFMT.c:1470: Failed assertion: (array32[i]) == (init_gen_rand_32_expected[i]) --> 56987722 != 2027035537: Output mismatch for i=12\r\ntest_gen_rand_32:test/unit/SFMT.c:1470: Failed assertion: (array32[i]) == (init_gen_rand_32_expected[i]) --> 3107113493 != 2534897563: Output mismatch for i=13\r\ntest_gen_rand_32:test/unit/SFMT.c:1470: Failed assertion: (array32[i]) == (init_gen_rand_32_expected[i]) --> 571033558 != 1686527725: Output mismatch for i=14\r\ntest_gen_rand_32:test/unit/SFMT.c:1470: Failed assertion: (array32[i]) == (init_gen_rand_32_expected[i]) --> 3546233604 != 545368292: Output mismatch for i=15\r\ntest_gen_rand_32:test/unit/SFMT.c:1470: Failed assertion: (array32[i]) == (init_gen_rand_32_expected[i]) --> 356067907 != 1489013321: Output mismatch for i=16\r\ntest_gen_rand_32:test/unit/SFMT.c:1470: Failed assertion: (array32[i]) == (init_gen_rand_32_expected[i]) --> 3083877846 != 1370534252: Output mismatch for i=17\r\n[..]\r\ntest_gen_rand_64:test/unit/SFMT.c:1539: Failed assertion: (array64[i]) == (init_gen_rand_64_expected[i]) --> 5913104268441886684 != 17911176066536804411: Output mismatch for i=320\r\ntest_gen_rand_64:test/unit/SFMT.c:1544: Failed assertion: (r) == (array64[i]) --> 15011377014086013184 != 5913104268441886684: Mismatch at array64[320]=520f9100d0531fdc, gen=d0531fdc520f9100\r\ntest_gen_rand_64:test/unit/SFMT.c:1539: Failed assertion: (array64[i]) == (init_gen_rand_64_expected[i]) --> 6489211395007107642 != 9435590428600085274: Output mismatch for i=321\r\ntest_gen_rand_64:test/unit/SFMT.c:1544: Failed assertion: (r) == (array64[i]) --> 16704082165977993057 != 6489211395007107642: Mismatch at array64[321]=5a0e4f61e7d0d23a, gen=e7d0d23a5a0e4f61\r\ntest_gen_rand_64:test/unit/SFMT.c:1539: Failed assertion: (array64[i]) == (init_gen_rand_64_expected[i]) --> 18394792964016838654 != 294488509967864007: Output mismatch for i=322\r\ntest_gen_rand_64:test/unit/SFMT.c:1544: Failed assertion: (r) == (array64[i]) --> 12759850028219461309 != 18394792964016838654: Mismatch at array64[322]=ff476ebdb11417fe, gen=b11417feff476ebd\r\ntest_gen_rand_64:test/unit/SFMT.c:1539: Failed assertion: (array64[i]) == (init_gen_rand_64_expected[i]) --> 10557335078815870876 != 8890111397567922046: Output mismatch for i=323\r\ntest_gen_rand_64:test/unit/SFMT.c:1544: Failed assertion: (r) == (array64[i]) --> 12364403651488460881 != 10557335078815870876: Mismatch at array64[323]=92833051ab972f9c, gen=ab972f9c92833051\r\ntest_gen_rand_64:test/unit/SFMT.c:1539: Failed assertion: (array64[i]) == (init_gen_rand_64_expected[i]) --> 16055781649477978126 != 7987823476034328778: Output mismatch for i=324\r\n[..]\r\ntest_gen_rand_64:test/unit/SFMT.c:1544: Failed assertion: (r) == (array64[i]) --> 1754619880594255701 != 3073899525695973756: Mismatch at array64[2179]=2aa8af551859a97c, gen=1859a97c2aa8af55\r\ntest_gen_rand_64:test/unit/SFMT.c:1544: Failed assertion: (r) == (array64[i]) --> 15597606917057861703 != 17683621739956131033: Mismatch at array64[2180]=f568d847d875d4d9, gen=d875d4d9f568d847\r\ntest_gen_rand_64:test/unit/SFMT.c:1544: Failed assertion: (r) == (array64[i]) --> 18168880899653445029 != 6213038555764413674: Mismatch at array64[2181]=563925a5fc24d4ea, gen=fc24d4ea563925a5\r\ntest_gen_rand_64:test/unit/SFMT.c:1544: Failed assertion: (r) == (array64[i]) --> 5538982302595934999 != 12927559740696718094: Mismatch at array64[2182]=b367eb174cde6b0e, gen=4cde6b0eb367eb17\r\ntest_gen_rand_64:test/unit/SFMT.c:1544: Failed assertion: (r) == (array64[i]) --> 5350760337346429364 != 7046024228361058349: Mismatch at array64[2183]=61c881b44a41b82d, gen=4a41b82d61c881b4\r\n[..]\r\ntest_gen_rand_64:test/unit/SFMT.c:1550: Failed assertion: (r) == (array64_2[i]) --> 15901047961728968207 != 12920235861796970207: Mismatch at array64_2[140]=b34de60fdcabdedf gen=dcabdedfb34de60f\r\ntest_gen_rand_64:test/unit/SFMT.c:1550: Failed assertion: (r) == (array64_2[i]) --> 16056892601259235855 != 7973511058236476095: Mismatch at array64_2[141]=6ea79a0fded58abf gen=ded58abf6ea79a0f\r\ntest_gen_rand_64:test/unit/SFMT.c:1550: Failed assertion: (r) == (array64_2[i]) --> 6741727410782203639 != 7219251473892207964: Mismatch at array64_2[142]=642feef75d8f6d5c gen=5d8f6d5c642feef7\r\ntest_gen_rand_64:test/unit/SFMT.c:1550: Failed assertion: (r) == (array64_2[i]) --> 5304134062951985163 != 16667100989749989843: Mismatch at array64_2[143]=e74d700b499c11d3 gen=499c11d3e74d700b\r\ntest_gen_rand_64:test/unit/SFMT.c:1550: Failed assertion: (r) == (array64_2[i]) --> 16714931991172784667 != 2497987184069926422: Mismatch at array64_2[144]=22aaa21be7f75e16 gen=e7f75e1622aaa21b\r\n[..]\r\ntest_by_array_64:test/unit/SFMT.c:1586: Failed assertion: (r) == (array64_2[i]) --> 16217721885120513390 != 2067087833999404065: Mismatch at array64_2[692]=1cafc56ee110ec21 gen=e110ec211cafc56e\r\ntest_by_array_64:test/unit/SFMT.c:1586: Failed assertion: (r) == (array64_2[i]) --> 9274943656950834061 != 9246210600625190941: Mismatch at array64_2[693]=8051238d80b7381d gen=80b7381d8051238d\r\ntest_by_array_64:test/unit/SFMT.c:1586: Failed assertion: (r) == (array64_2[i]) --> 8735624157386078780 != 5211080643994921955: Mismatch at array64_2[694]=48517a3c793b2be3 gen=793b2be348517a3c\r\ntest_by_array_64:test/unit/SFMT.c:1586: Failed assertion: (r) == (array64_2[i]) --> 17969465669581198025 != 17795642742515195345: Mismatch at array64_2[695]=f6f6d2c9f9605dd1 gen=f9605dd1f6f6d2c9\r\ntest_by_array_64:test/unit/SFMT.c:1586: Failed assertion: (r) == (array64_2[i]) --> 6906580627730542245 != 34109759994534525: Mismatch at array64_2[696]=792ea55fd91a7d gen=5fd91a7d00792ea5\r\ntest_by_array_64:test/unit/SFMT.c:1586: Failed assertion: (r) == (array64_2[i]) --> 15744512752759354527 != 4455243792546512622: Mismatch at array64_2[697]=3dd4349fda7fbeee gen=da7fbeee3dd4349f\r\ntest_by_array_64:test/unit/SFMT.c:1586: Failed assertion: (r) == (array64_2[i]) --> 11502447904695190185 != 4524713178174646125: Mismatch at array64_2[698]=3ecb02a99fa0e76d gen=9fa0e76d3ecb02a9\r\ntest_by_array_64:test/unit/SFMT.c:1586: Failed assertion: (r) == (array64_2[i]) --> 3509278514095987961 != 3646258704899339831: Mismatch at array64_2[699]=329a1cf930b37637 gen=30b37637329a1cf9\r\ntest_by_array_64 (arena_new-reentrant): fail\r\n--- pass: 0/12, skip: 0/12, fail: 12/12 ---\r\n```\r\n```\r\n% grep ': fail' b.log\r\ntest_gen_rand_32 (non-reentrant): fail\r\ntest_gen_rand_32 (libc-reentrant): fail\r\ntest_gen_rand_32 (arena_new-reentrant): fail\r\ntest_by_array_32 (non-reentrant): fail\r\ntest_by_array_32 (libc-reentrant): fail\r\ntest_by_array_32 (arena_new-reentrant): fail\r\ntest_gen_rand_64 (non-reentrant): fail\r\ntest_gen_rand_64 (libc-reentrant): fail\r\ntest_gen_rand_64 (arena_new-reentrant): fail\r\ntest_by_array_64 (non-reentrant): fail\r\ntest_by_array_64 (libc-reentrant): fail\r\ntest_by_array_64 (arena_new-reentrant): fail\r\n```"},"comment":{"url":"https://api.github.com/repos/jemalloc/jemalloc/issues/comments/333745795","html_url":"https://github.com/jemalloc/jemalloc/issues/761#issuecomment-333745795","issue_url":"https://api.github.com/repos/jemalloc/jemalloc/issues/761","id":333745795,"user":{"login":"davidtgoldblatt","id":1660204,"avatar_url":"https://avatars3.githubusercontent.com/u/1660204?v=4","gravatar_id":"","url":"https://api.github.com/users/davidtgoldblatt","html_url":"https://github.com/davidtgoldblatt","followers_url":"https://api.github.com/users/davidtgoldblatt/followers","following_url":"https://api.github.com/users/davidtgoldblatt/following{/other_user}","gists_url":"https://api.github.com/users/davidtgoldblatt/gists{/gist_id}","starred_url":"https://api.github.com/users/davidtgoldblatt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davidtgoldblatt/subscriptions","organizations_url":"https://api.github.com/users/davidtgoldblatt/orgs","repos_url":"https://api.github.com/users/davidtgoldblatt/repos","events_url":"https://api.github.com/users/davidtgoldblatt/events{/privacy}","received_events_url":"https://api.github.com/users/davidtgoldblatt/received_events","type":"User","site_admin":false},"created_at":"2017-10-03T05:47:57Z","updated_at":"2017-10-03T05:47:57Z","author_association":"MEMBER","body":"I can't come up with a plausible theory for why the added spinwait mechanism has observable behavior in the test, but reading the Power ISA documentation[1], the assembly in the bisected-to diff isn't correct anyway (as @marxin points out): the setting of the program-priority register is \"sticky\", and we never undo the lowering. (I also think that GCC's version is incorrect w.r.t. signals because of related issues).\r\n\r\nWe could do something similar, but given that we don't have testing here in the first place, I'm inclined to simply not try. I'll put something up reverting the problematic commit tomorrow.\r\n\r\n[1] Book II, chapter 3 of the 2.07B or 3.0B ISA documents."}}
{"actor":{"display_login":"davidtgoldblatt"}}