Issue #9124 has been updated by jonforums (Jon Forums).


No failure on 64bit ubuntu server 13.10 with glibc 2.17 and gcc 4.8.1. Failure only on arch 64bit with glibc 2.18 and gcc 4.8.2
----------------------------------------
Bug #9124: TestSocket errors in test-all on Arch 64-bit
https://bugs.ruby-lang.org/issues/9124#change-43095

Author: jonforums (Jon Forums)
Status: Open
Priority: Normal
Assignee: 
Category: test
Target version: current: 2.1.0
ruby -v: ruby 2.1.0dev (2013-11-19 trunk 43711) [x86_64-linux]
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN


My system misconfiguration or MRI bug?

<pre>
arch64:build % uname -a
Linux arch64 3.12.0-1-ARCH #1 SMP PREEMPT Wed Nov 6 09:06:27 CET 2013 x86_64 GNU/Linux

arch64:build % uru ls
 => 210dev      : ruby 2.1.0dev (2013-11-19 trunk 43711) [x86_64-linux]

arch64:build % ../configure --prefix=$HOME/.rubies/ruby-2.1.0 --enable-shared --disable-install-doc && make all && make test-all
...
[12188/14685] TestSocket#test_timestamp = 0.00 s
  5) Error:
TestSocket#test_timestamp:
Errno::EINVAL: Invalid argument - recvmsg(2)
    /home/jon/rubydev/ruby-git/test/socket/test_socket.rb:457:in `recvmsg'
    /home/jon/rubydev/ruby-git/test/socket/test_socket.rb:457:in `block (2 levels) in test_timestamp'
    /home/jon/rubydev/ruby-git/build/.ext/common/socket.rb:181:in `bind'
    /home/jon/rubydev/ruby-git/test/socket/test_socket.rb:454:in `block in test_timestamp'
    /home/jon/rubydev/ruby-git/build/.ext/common/socket.rb:181:in `bind'
    /home/jon/rubydev/ruby-git/test/socket/test_socket.rb:453:in `test_timestamp'

[12189/14685] TestSocket#test_timestampns = 0.00 s
  6) Error:
TestSocket#test_timestampns:
Errno::EINVAL: Invalid argument - recvmsg(2)
    /home/jon/rubydev/ruby-git/test/socket/test_socket.rb:484:in `recvmsg'
    /home/jon/rubydev/ruby-git/test/socket/test_socket.rb:484:in `block (2 levels) in test_timestampns'
    /home/jon/rubydev/ruby-git/build/.ext/common/socket.rb:181:in `bind'
    /home/jon/rubydev/ruby-git/test/socket/test_socket.rb:476:in `block in test_timestampns'
    /home/jon/rubydev/ruby-git/build/.ext/common/socket.rb:181:in `bind'
    /home/jon/rubydev/ruby-git/test/socket/test_socket.rb:475:in `test_timestampns'

[12190/14685] TestSocket#test_udp_server = 10.02 s
  7) Error:
TestSocket#test_udp_server:
Errno::EINVAL: Invalid argument - recvmsg(2)
    /home/jon/rubydev/ruby-git/build/.ext/common/socket.rb:654:in `recvmsg_nonblock'
    /home/jon/rubydev/ruby-git/build/.ext/common/socket.rb:654:in `block in udp_server_recv'
    /home/jon/rubydev/ruby-git/build/.ext/common/socket.rb:652:in `each'
    /home/jon/rubydev/ruby-git/build/.ext/common/socket.rb:652:in `udp_server_recv'
    /home/jon/rubydev/ruby-git/build/.ext/common/socket.rb:684:in `block in udp_server_loop_on'
    /home/jon/rubydev/ruby-git/build/.ext/common/socket.rb:682:in `loop'
    /home/jon/rubydev/ruby-git/build/.ext/common/socket.rb:682:in `udp_server_loop_on'
    /home/jon/rubydev/ruby-git/test/socket/test_socket.rb:388:in `block (2 levels) in test_udp_server'

[12247/14685] TestSocketNonblock#test_recvmsg_nonblock_error = 0.00 s
  8) Error:
TestSocketNonblock#test_recvmsg_nonblock_error:
Errno::EINVAL: Invalid argument - recvmsg(2)
    /home/jon/rubydev/ruby-git/test/socket/test_nonblock.rb:250:in `recvmsg_nonblock'
    /home/jon/rubydev/ruby-git/test/socket/test_nonblock.rb:250:in `block in test_recvmsg_nonblock_error'
    /home/jon/rubydev/ruby-git/test/socket/test_nonblock.rb:155:in `udp_pair'
    /home/jon/rubydev/ruby-git/test/socket/test_nonblock.rb:248:in `test_recvmsg_nonblock_error'

[12279/14685] TestSocket_UNIXSocket#test_fd_passing_n = 0.00 s
  9) Error:
TestSocket_UNIXSocket#test_fd_passing_n:
Errno::EINVAL: Invalid argument - recvmsg(2)
    /home/jon/rubydev/ruby-git/test/socket/test_unix.rb:54:in `recvmsg'
    /home/jon/rubydev/ruby-git/test/socket/test_unix.rb:54:in `block (2 levels) in test_fd_passing_n'
    /home/jon/rubydev/ruby-git/test/socket/test_unix.rb:46:in `pair'
    /home/jon/rubydev/ruby-git/test/socket/test_unix.rb:46:in `block in test_fd_passing_n'
    /home/jon/rubydev/ruby-git/test/socket/test_unix.rb:44:in `each'
    /home/jon/rubydev/ruby-git/test/socket/test_unix.rb:44:in `test_fd_passing_n'

[12280/14685] TestSocket_UNIXSocket#test_fd_passing_n2 = 0.00 s
 10) Error:
TestSocket_UNIXSocket#test_fd_passing_n2:
Errno::EINVAL: Invalid argument - recvmsg(2)
    /home/jon/rubydev/ruby-git/test/socket/test_unix.rb:91:in `recvmsg'
    /home/jon/rubydev/ruby-git/test/socket/test_unix.rb:91:in `block (2 levels) in test_fd_passing_n2'
    /home/jon/rubydev/ruby-git/test/socket/test_unix.rb:83:in `pair'
    /home/jon/rubydev/ruby-git/test/socket/test_unix.rb:83:in `block in test_fd_passing_n2'
    /home/jon/rubydev/ruby-git/test/socket/test_unix.rb:81:in `each'
    /home/jon/rubydev/ruby-git/test/socket/test_unix.rb:81:in `test_fd_passing_n2'

[12292/14685] TestSocket_UNIXSocket#test_recvmsg = 0.00 s
 11) Error:
TestSocket_UNIXSocket#test_recvmsg:
Errno::EINVAL: Invalid argument - recvmsg(2)
    /home/jon/rubydev/ruby-git/test/socket/test_unix.rb:214:in `recvmsg'
    /home/jon/rubydev/ruby-git/test/socket/test_unix.rb:214:in `block (2 levels) in test_recvmsg'
    /home/jon/rubydev/ruby-git/test/socket/test_unix.rb:212:in `pair'
    /home/jon/rubydev/ruby-git/test/socket/test_unix.rb:212:in `block in test_recvmsg'
    /home/jon/rubydev/ruby-git/test/socket/test_unix.rb:211:in `pipe'
    /home/jon/rubydev/ruby-git/test/socket/test_unix.rb:211:in `test_recvmsg'

[12295/14685] TestSocket_UNIXSocket#test_sendcred_ucred = 0.00 s
 12) Error:
TestSocket_UNIXSocket#test_sendcred_ucred:
Errno::EINVAL: Invalid argument - recvmsg(2)
    /home/jon/rubydev/ruby-git/test/socket/test_unix.rb:479:in `recvmsg'
    /home/jon/rubydev/ruby-git/test/socket/test_unix.rb:479:in `block in test_sendcred_ucred'
    /home/jon/rubydev/ruby-git/lib/tmpdir.rb:88:in `mktmpdir'
    /home/jon/rubydev/ruby-git/test/socket/test_unix.rb:472:in `test_sendcred_ucred'

Finished tests in 410.247772s, 35.7954 tests/s, 6317.1702 assertions/s.
14685 tests, 2591605 assertions, 0 failures, 8 errors, 32 skips
</pre>


-- 
http://bugs.ruby-lang.org/