[前][次][番号順一覧][スレッド一覧]

ruby-changes:52147

From: normal <ko1@a...>
Date: Tue, 14 Aug 2018 09:31:53 +0900 (JST)
Subject: [ruby-changes:52147] normal:r64355 (trunk): test/fiddle/test_function.rb (test_nogvl_poll): stop timer hack

normal	2018-08-14 09:31:31 +0900 (Tue, 14 Aug 2018)

  New Revision: 64355

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

  Log:
    test/fiddle/test_function.rb (test_nogvl_poll): stop timer hack
    
    EINTR seems unavoidable in real programs (or MJIT), so maybe
    it's not worth dealing with.  r64353 relies on POSIX timers
    to signal.
    
    Switching pipes and sockets to non-blocking by default would let
    us get rid of POSIX timers, timer pthread and this hack:
    https://bugs.ruby-lang.org/issues/14968
    
    [ruby-core:88360] [Misc #14937]

  Modified files:
    trunk/test/fiddle/test_function.rb
Index: test/fiddle/test_function.rb
===================================================================
--- test/fiddle/test_function.rb	(revision 64354)
+++ test/fiddle/test_function.rb	(revision 64355)
@@ -73,6 +73,12 @@ module Fiddle https://github.com/ruby/ruby/blob/trunk/test/fiddle/test_function.rb#L73
     end
 
     def test_nogvl_poll
+      # XXX hack to quiet down CI errors on EINTR from r64353
+      # [ruby-core:88360] [Misc #14937]
+      # Making pipes (and sockets) non-blocking by default would allow
+      # us to get rid of POSIX timers / timer pthread
+      # https://bugs.ruby-lang.org/issues/14968
+      IO.pipe { |r,w| IO.select([r], [w]) }
       begin
         poll = @libc['poll']
       rescue Fiddle::DLError

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]