[ruby-cvs:69829] normal:r62668 (trunk): thread.c: reset waitq of keeping mutexes in child

normal at ruby-lang.org normal at ruby-lang.org
Tue Mar 6 07:58:13 JST 2018


normal	2018-03-06 07:58:13 +0900 (Tue, 06 Mar 2018)

  New Revision: 62668

  https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=62668

  Log:
    thread.c: reset waitq of keeping mutexes in child
    
    We must not maintain references to threads in the parent process
    in any mutexes held by the child process.
    
    * thread_sync.c (rb_mutex_cleanup_keeping_mutexes): new function
    * thread.c (rb_thread_atfork): cleanup keeping mutexes
      [ruby-core:85940] [Bug #14578]
    
    Fixes: r58604 (commit 3586c9e0876e784767a1c1adba9ebc2499fa0ec2)
           ("reduce rb_mutex_t size from 160 to 80 bytes on 64-bit")

  Modified files:
    trunk/test/ruby/test_thread.rb
    trunk/thread.c
    trunk/thread_sync.c


More information about the ruby-cvs mailing list