1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/spec/ruby/core
Koichi Sasada 36da0b3da1 check interrupts at each frame pop timing.
Asynchronous events such as signal trap, finalization timing,
thread switching and so on are managed by "interrupt_flag".
Ruby's threads check this flag periodically and if a thread
does not check this flag, above events doesn't happen.

This checking is CHECK_INTS() (related) macro and it is placed
at some places (laeve instruction and so on). However, at the end
of C methods, C blocks (IMEMO_IFUNC) etc there are no checking
and it can introduce uninterruptible thread.

To modify this situation, we decide to place CHECK_INTS() at
vm_pop_frame(). It increases interrupt checking points.
[Bug #16366]

This patch can introduce unexpected events...
2019-11-29 17:47:02 +09:00
..
argf Update to ruby/spec@875a09e 2019-07-27 12:40:09 +02:00
array Deprecate taint/trust and related methods, and make the methods no-ops 2019-11-18 01:00:25 +02:00
basicobject Update to ruby/spec@875a09e 2019-07-27 12:40:09 +02:00
binding Suppress warnings against locations in eval 2019-08-03 14:07:10 +09:00
builtin_constants Use an exclusive range for ruby_version_is 2019-04-23 15:13:36 +09:00
class Update to ruby/spec@875a09e 2019-07-27 12:40:09 +02:00
comparable Comparable#clamp with a range [Feature #14784] 2019-10-16 01:42:34 +09:00
complex Update to ruby/spec@875a09e 2019-07-27 12:40:09 +02:00
dir Update to ruby/spec@34e6246 2019-09-29 19:13:37 +02:00
encoding Update to ruby/spec@519df35 2019-09-29 16:03:58 +02:00
enumerable Deprecate taint/trust and related methods, and make the methods no-ops 2019-11-18 01:00:25 +02:00
enumerator Update to ruby/spec@e69a14c 2019-09-29 18:01:32 +02:00
env Update to ruby/spec@28a728b 2019-10-26 20:53:01 +02:00
exception Update to ruby/spec@28a728b 2019-10-26 20:53:01 +02:00
false [EXPERIMENTAL] Make NilClass#to_s, TrueClass#to_s and FalseClass#to_s return a frozen String 2019-09-27 13:52:33 +09:00
fiber Update to ruby/spec@875a09e 2019-07-27 12:40:09 +02:00
file Update to ruby/spec@28a728b 2019-10-26 20:53:01 +02:00
filetest Update to ruby/spec@8d74d49 2019-06-27 21:02:36 +02:00
float Update to ruby/spec@875a09e 2019-07-27 12:40:09 +02:00
gc Update to ruby/spec@e69a14c 2019-09-29 18:01:32 +02:00
hash Deprecate taint/trust and related methods, and make the methods no-ops 2019-11-18 01:00:25 +02:00
integer Update to ruby/spec@875a09e 2019-07-27 12:40:09 +02:00
io Deprecate taint/trust and related methods, and make the methods no-ops 2019-11-18 01:00:25 +02:00
kernel Deprecate taint/trust and related methods, and make the methods no-ops 2019-11-18 01:00:25 +02:00
main Update to ruby/spec@875a09e 2019-07-27 12:40:09 +02:00
marshal Deprecate taint/trust and related methods, and make the methods no-ops 2019-11-18 01:00:25 +02:00
matchdata Deprecate taint/trust and related methods, and make the methods no-ops 2019-11-18 01:00:25 +02:00
math Update to ruby/spec@875a09e 2019-07-27 12:40:09 +02:00
method Update to ruby/spec@519df35 2019-09-29 16:03:58 +02:00
module Deprecate taint/trust and related methods, and make the methods no-ops 2019-11-18 01:00:25 +02:00
mutex Update to ruby/spec@28a728b 2019-10-26 20:53:01 +02:00
nil [EXPERIMENTAL] Make NilClass#to_s, TrueClass#to_s and FalseClass#to_s return a frozen String 2019-09-27 13:52:33 +09:00
numeric Update to ruby/spec@519df35 2019-09-29 16:03:58 +02:00
objectspace Update to ruby/spec@875a09e 2019-07-27 12:40:09 +02:00
proc Improve Proc#to_s specs 2019-09-08 12:41:14 +02:00
process Exclude some clocks on armv8 too 2019-11-06 23:10:15 +01:00
queue Update to ruby/spec@cdd6ff7 2018-11-27 20:38:57 +00:00
random Update to ruby/spec@28a728b 2019-10-26 20:53:01 +02:00
range Deprecate taint/trust and related methods, and make the methods no-ops 2019-11-18 01:00:25 +02:00
rational Update to ruby/spec@875a09e 2019-07-27 12:40:09 +02:00
regexp Fix warnings in Regexp#{match,match?} specs 2019-11-03 11:25:42 +01:00
signal Update to ruby/spec@875a09e 2019-07-27 12:40:09 +02:00
sizedqueue Update to ruby/spec@875a09e 2019-07-27 12:40:09 +02:00
string Deprecate taint/trust and related methods, and make the methods no-ops 2019-11-18 01:00:25 +02:00
struct Update to ruby/spec@875a09e 2019-07-27 12:40:09 +02:00
symbol Deprecate taint/trust and related methods, and make the methods no-ops 2019-11-18 01:00:25 +02:00
systemexit Update to ruby/spec@a454137 2018-06-27 12:30:05 +00:00
thread check interrupts at each frame pop timing. 2019-11-29 17:47:02 +09:00
threadgroup Update to ruby/spec@875a09e 2019-07-27 12:40:09 +02:00
time Update to ruby/spec@28a728b 2019-10-26 20:53:01 +02:00
tracepoint Update to ruby/spec@875a09e 2019-07-27 12:40:09 +02:00
true [EXPERIMENTAL] Make NilClass#to_s, TrueClass#to_s and FalseClass#to_s return a frozen String 2019-09-27 13:52:33 +09:00
unboundmethod Update to ruby/spec@519df35 2019-09-29 16:03:58 +02:00
warning Update to ruby/spec@15c9619 2019-04-27 18:53:23 +02:00