Issue #2394 has been updated by Roger Pack.
ruby -e 'fork { puts }' doesn't seem to quite do it, though maybe it would if I ran it over and over again.
Here's a more minimalistic test for it (reproduces every time):
require 'forkoff' # gem
a = File.open('bii', 'w')
[1].forkoff { |n|
a.write '1'
}
[BUG] pthread_mutex_lock: Invalid argument (EINVAL)
ruby 1.9.2dev (2009-11-26 trunk 25926) [i686-linux]
-- control frame ----------
---------------------------
-- C level backtrace information -------------------------------------------
/home/rdp/installs/ruby_trunk_installed//lib/libruby.so.1.9(rb_vm_bugreport+0x72) [0xb7e76992]
/home/rdp/installs/ruby_trunk_installed//lib/libruby.so.1.9 [0xb7d53581]
/home/rdp/installs/ruby_trunk_installed//lib/libruby.so.1.9(rb_bug+0x3a) [0xb7d5363a]
/home/rdp/installs/ruby_trunk_installed//lib/libruby.so.1.9(rb_bug_errno+0x7f5) [0xb7d543c5]
/home/rdp/installs/ruby_trunk_installed//lib/libruby.so.1.9(rb_thread_blocking_region+0x1fa) [0xb7e7d35a]
/home/rdp/installs/ruby_trunk_installed//lib/libruby.so.1.9 [0xb7d78d9a]
/home/rdp/installs/ruby_trunk_installed//lib/libruby.so.1.9 [0xb7d7b2be]
/home/rdp/installs/ruby_trunk_installed//lib/libruby.so.1.9(rb_io_fptr_finalize+0xe4) [0xb7d7b4d4]
/home/rdp/installs/ruby_trunk_installed//lib/libruby.so.1.9 [0xb7d69746]
/home/rdp/installs/ruby_trunk_installed//lib/libruby.so.1.9 [0xb7d6a632]
/home/rdp/installs/ruby_trunk_installed//lib/libruby.so.1.9(ruby_cleanup+0x12e) [0xb7d58f9e]
/home/rdp/installs/ruby_trunk_installed//lib/libruby.so.1.9 [0xb7e7c71e]
/home/rdp/installs/ruby_trunk_installed//lib/libruby.so.1.9 [0xb7e7c761]
/lib/libpthread.so.0 [0xb7cdffc0]
/lib/libc.so.6(clone+0x5e) [0xb7bfea1e]
----------------------------------------
http://redmine.ruby-lang.org/issues/show/2394
----------------------------------------
http://redmine.ruby-lang.org