{"action":"created","issue":{"url":"https://api.github.com/repos/libuv/libuv/issues/816","repository_url":"https://api.github.com/repos/libuv/libuv","labels_url":"https://api.github.com/repos/libuv/libuv/issues/816/labels{/name}","comments_url":"https://api.github.com/repos/libuv/libuv/issues/816/comments","events_url":"https://api.github.com/repos/libuv/libuv/issues/816/events","html_url":"https://github.com/libuv/libuv/issues/816","id":147049981,"number":816,"title":"Possible regression in 1.9.0 on sparc64, poll_* testcases","user":{"login":"lucab","id":98086,"avatar_url":"https://avatars.githubusercontent.com/u/98086?v=3","gravatar_id":"","url":"https://api.github.com/users/lucab","html_url":"https://github.com/lucab","followers_url":"https://api.github.com/users/lucab/followers","following_url":"https://api.github.com/users/lucab/following{/other_user}","gists_url":"https://api.github.com/users/lucab/gists{/gist_id}","starred_url":"https://api.github.com/users/lucab/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lucab/subscriptions","organizations_url":"https://api.github.com/users/lucab/orgs","repos_url":"https://api.github.com/users/lucab/repos","events_url":"https://api.github.com/users/lucab/events{/privacy}","received_events_url":"https://api.github.com/users/lucab/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2016-04-08T21:59:20Z","updated_at":"2016-04-09T07:18:17Z","closed_at":null,"body":"(Preliminary report, this still needs to be properly triaged)\r\n\r\nIt looks like 1.9.0 may have introduced a regression on sparc64, as the testsuite now reproducibly fails on multiple builders for that arch with the following trace:\r\n```\r\n[%  64|+ 183|-   0|T   0|S   2]: poll_duplex\r\n`poll_duplex` failed: exit code 134\r\nOutput from process `poll_duplex`:\r\nAssertion failed in test/test-poll.c on line 198: events & context->events\r\n=============================================================\r\n[%  65|+ 183|-   1|T   0|S   2]: poll_unidirectional\r\n`poll_unidirectional` failed: exit code 134\r\nOutput from process `poll_unidirectional`:\r\nAssertion failed in test/test-poll.c on line 198: events & context->events\r\n=============================================================\r\n```\r\nFor further inspection, full build log from Debian autobuilders is available [here](https://buildd.debian.org/status/fetch.php?pkg=libuv1&arch=sparc64&ver=1.9.0-1&stamp=1460091262).\r\n\r\nPrevious stable version (1.8.0) was building without any failures in the testsuite.\r\n"},"comment":{"url":"https://api.github.com/repos/libuv/libuv/issues/comments/207731539","html_url":"https://github.com/libuv/libuv/issues/816#issuecomment-207731539","issue_url":"https://api.github.com/repos/libuv/libuv/issues/816","id":207731539,"user":{"login":"lucab","id":98086,"avatar_url":"https://avatars.githubusercontent.com/u/98086?v=3","gravatar_id":"","url":"https://api.github.com/users/lucab","html_url":"https://github.com/lucab","followers_url":"https://api.github.com/users/lucab/followers","following_url":"https://api.github.com/users/lucab/following{/other_user}","gists_url":"https://api.github.com/users/lucab/gists{/gist_id}","starred_url":"https://api.github.com/users/lucab/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lucab/subscriptions","organizations_url":"https://api.github.com/users/lucab/orgs","repos_url":"https://api.github.com/users/lucab/repos","events_url":"https://api.github.com/users/lucab/events{/privacy}","received_events_url":"https://api.github.com/users/lucab/received_events","type":"User","site_admin":false},"created_at":"2016-04-09T07:18:17Z","updated_at":"2016-04-09T07:18:17Z","body":"@santigimeno I think your guess could be on-spot. Looking at the kernel, it looks like `POLLRDHUP` is defined everywhere as 0x2000, except for sparc{32,64} where it is 2048 (0x800): https://github.com/torvalds/linux/blob/master/arch/sparc/include/uapi/asm/poll.h\r\n\r\nCan't we use the constant provided by libc/kernel if available, and only fallback to the hardcoded value if not?"}}